D - Announce: Stonewheel 0.0.1
- Burton Radons (24/24) Jun 20 2002 I've released my first version of Stonewheel, a dynamic linking system
- anderson (1/1) Jun 20 2002 Cool, I've always liked using plug in programming.
- Matthew Wilson (4/28) Jun 20 2002 Burton
- Matthew Wilson (5/39) Jun 20 2002 Maybe when it's a bit more mature. Nevertheless, I'm sure it would make
- Burton Radons (2/3) Jun 20 2002 No.
- anderson (7/10) Jun 21 2002 You had to ask! Matthew Wilson has been ragging on about complier pluggi...
- Matthew Wilson (7/19) Jun 22 2002 Wrong!
- Burton Radons (14/14) Jun 22 2002 I've put up 0.0.2, which is a general menagerie of bug fixes, corrected
- Burton Radons (14/14) Jun 25 2002 Okay, I've release Stonewheel 0.0.3. This includes support for DLLs and...
- Burton Radons (3/3) Jun 26 2002 I discovered a serious bug wherein functions taking more than 1024 bytes...
I've released my first version of Stonewheel, a dynamic linking system for D. It allows DLL-like activities to be run in an executable-like environment, meaning everyone uses the same copy of Phobos and can have much more complex interactions than DLL provides. Normally modularization ends at linking; Stonewheel extends it into runtime, not only for plugins but to allow the entire program to be constructed in packages with no more difficulty than using them. I also intend to use it to dynamically compile Quake III-style shaders. There's even an expression evaluator that builds a program around the expression, loads it, and then calls the function. If Windows didn't get in the way and it would just be me and DMD it would be very fast, but unfortunately it isn't, but it is cute. There's a module for taking apart a function signature and remangling it, and you can find the nearest symbol to a given pointer very easily. I've used this to reproduce a class definition from its vtable, apart from the fields. This component (in types.d) is entirely separate from Stonewheel and could be useful in other things. Using the library is not entirely recommended right now as I haven't used it in any actual projects. I'm about to embark on a play 3D engine and I'll use it in there and get everything up to snuff and make some tutorials and clean up things. It's an alpha version fer shure. The files are: http://amateur-scrolls.sourceforge.net/old/stonewheel/stonewheel-0.0.1.zip http://amateur-scrolls.sourceforge.net/old/stonewheel/stonewheel.html
Jun 20 2002
Cool, I've always liked using plug in programming.
Jun 20 2002
Burton Can you guess what I'm going to ask ... "Burton Radons" <loth users.sourceforge.net> wrote in message news:3D11E9DF.7090503 users.sourceforge.net...I've released my first version of Stonewheel, a dynamic linking system for D. It allows DLL-like activities to be run in an executable-like environment, meaning everyone uses the same copy of Phobos and can have much more complex interactions than DLL provides. Normally modularization ends at linking; Stonewheel extends it into runtime, not only for plugins but to allow the entire program to be constructed in packages with no more difficulty than using them. I also intend to use it to dynamically compile Quake III-style shaders. There's even an expression evaluator that builds a program around the expression, loads it, and then calls the function. If Windows didn't get in the way and it would just be me and DMD it would be very fast, but unfortunately it isn't, but it is cute. There's a module for taking apart a function signature and remangling it, and you can find the nearest symbol to a given pointer very easily. I've used this to reproduce a class definition from its vtable, apart from the fields. This component (in types.d) is entirely separate from Stonewheel and could be useful in other things. Using the library is not entirely recommended right now as I haven't used it in any actual projects. I'm about to embark on a play 3D engine and I'll use it in there and get everything up to snuff and make some tutorials and clean up things. It's an alpha version fer shure. The files are: http://amateur-scrolls.sourceforge.net/old/stonewheel/stonewheel-0.0.1.zip http://amateur-scrolls.sourceforge.net/old/stonewheel/stonewheel.html
Jun 20 2002
Maybe when it's a bit more mature. Nevertheless, I'm sure it would make fascinating reading "Matthew Wilson" <matthew thedjournal.com> wrote in message news:aetneu$22p$2 digitaldaemon.com...Burton Can you guess what I'm going to ask ... "Burton Radons" <loth users.sourceforge.net> wrote in message news:3D11E9DF.7090503 users.sourceforge.net...http://amateur-scrolls.sourceforge.net/old/stonewheel/stonewheel-0.0.1.zipI've released my first version of Stonewheel, a dynamic linking system for D. It allows DLL-like activities to be run in an executable-like environment, meaning everyone uses the same copy of Phobos and can have much more complex interactions than DLL provides. Normally modularization ends at linking; Stonewheel extends it into runtime, not only for plugins but to allow the entire program to be constructed in packages with no more difficulty than using them. I also intend to use it to dynamically compile Quake III-style shaders. There's even an expression evaluator that builds a program around the expression, loads it, and then calls the function. If Windows didn't get in the way and it would just be me and DMD it would be very fast, but unfortunately it isn't, but it is cute. There's a module for taking apart a function signature and remangling it, and you can find the nearest symbol to a given pointer very easily. I've used this to reproduce a class definition from its vtable, apart from the fields. This component (in types.d) is entirely separate from Stonewheel and could be useful in other things. Using the library is not entirely recommended right now as I haven't used it in any actual projects. I'm about to embark on a play 3D engine and I'll use it in there and get everything up to snuff and make some tutorials and clean up things. It's an alpha version fer shure. The files are:http://amateur-scrolls.sourceforge.net/old/stonewheel/stonewheel.html
Jun 20 2002
Matthew Wilson wrote:Can you guess what I'm going to ask ...No.
Jun 20 2002
You had to ask! Matthew Wilson has been ragging on about complier pluggins (with language style enforcement) all week. (No offence Matthew) By the way Matthew have you put together anything more concrete? Like how you'd like the script/program code to look? "Burton Radons" <loth users.sourceforge.net> wrote in message news:3D12C82F.4010902 users.sourceforge.net...Matthew Wilson wrote:Can you guess what I'm going to ask ...No.
Jun 21 2002
Wrong! I was going to try and strong-arm Burton into writing this up as an article. I genuinely believe it would be a fascinating piece. Of course, once we understand it intimately, I may than start banging on about building in support for pedanticism up the wazoo! "anderson" <anderson firestar.com.au> wrote in message news:aeul9g$12jf$1 digitaldaemon.com...You had to ask! Matthew Wilson has been ragging on about complier pluggins (with language style enforcement) all week. (No offence Matthew) By the way Matthew have you put together anything more concrete? Like how you'd like the script/program code to look? "Burton Radons" <loth users.sourceforge.net> wrote in message news:3D12C82F.4010902 users.sourceforge.net...Matthew Wilson wrote:Can you guess what I'm going to ask ...No.
Jun 22 2002
I've put up 0.0.2, which is a general menagerie of bug fixes, corrected linking, and many, many more exports from the executable. It's sufficiently developed that the test 3D engine has a stable development environment (and it's fantastic). What remains is DLL support and exporting the GC and threading properly. Only one copy of Phobos is used by modules, but the partial copy in the executable has to be selectively exported when there's a dependency on there being only one instance of a variable. This is part of why it's recommended that the executable code take no longer than thirty lines to get the job done - the 3d engine's main takes exactly half that. So this is a transitional release - 0.0.3 should be a stable one and should follow soon, hopefully tommorrow. I'll also put up the nascent 3D engine to show how it can be done. http://amateur-scrolls.sourceforge.net/old/stonewheel
Jun 22 2002
Okay, I've release Stonewheel 0.0.3. This includes support for DLLs and ensures that the GC is being worked with properly. I've also put up the nascent 3d engine/development system. More the latter than the former - the "demo" is no more than a test (it doesn't even have resource management, much less textures or surfaces), but it shows how Stonewheel can be used to create it. The only tweak I may be making to the dev system is to change how it does the package directories; imports have to be fully qualified stuff like "import package.video.video;". I tried making it "import video;" but DMC bugs got in the way. It can be found at: http://amateur-scrolls.sourceforge.net/old/stonewheel/ stonewheel-0.0.3.zip is the current Stonewheel version suffer-0.0.1.zip is the current 3d engine version
Jun 25 2002
I discovered a serious bug wherein functions taking more than 1024 bytes were not being loaded properly, resulting in mysterious crashes. I've updated the zip file for 0.0.3 with the fix. All apologies.
Jun 26 2002