Thread overview | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
June 20, 2002 Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
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 |
June 20, 2002 Re: Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | Cool, I've always liked using plug in programming. |
June 20, 2002 Re: Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | 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 > |
June 20, 2002 Re: Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Matthew Wilson | 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... > > 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 > > > > |
June 21, 2002 Re: Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Matthew Wilson | Matthew Wilson wrote:
> Can you guess what I'm going to ask ...
No.
|
June 21, 2002 Re: Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | 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. > |
June 22, 2002 Re: Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
Posted in reply to anderson | 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. > > > > |
June 23, 2002 Re: Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | 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 |
June 26, 2002 Re: Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | 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 |
June 27, 2002 Re: Announce: Stonewheel 0.0.1 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | 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. |
Copyright © 1999-2021 by the D Language Foundation