September 01, 2002 bytecode & co. | ||||
---|---|---|---|---|
| ||||
Hi *, I 'm interested in using D as a script language in an image processing system. It is very important for this application that the scripts are executed as fast as possible. To achieve this, the following needs exist: - the D compiler should be able to produce bytecode - the final bytecode file should not contain "native" code (from the D inline assembler) - when objects are released (or the last object reference is removed), the "virtual machine" should notified - to have the flexibility to implement a GC-style system or directly using object destruction. As you can see, I 'd like to use D in an embedded system and don't like the idea to use garbage collection in a memory-limited device. Is something like this already available? How am I able to create my own "bytecode" from D source? Best regards, Mark Junker |
September 04, 2002 Re: bytecode & co. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Alexander Lahmann | Alexander Lahmann wrote: > Hi *, > > I > 'm interested in using D as a script language in an image processing > system. It is very important for this application that the scripts are > executed as fast as possible. To achieve this, the following needs > exist: > > - the D compiler should be able to produce bytecode Current compilers don't do this, but you could write a backend for GCC to produce your bytecode. (There is currently a project in the works to write a D frontend for GCC). > - the final bytecode file should not contain "native" code (from the D > inline assembler) I don't know if any of the current frontends do this, but it seems simple enough to disable this feature... > - when objects are released (or the last object reference is removed), the "virtual machine" should notified - to have the flexibility to implement a GC-style system or directly using object destruction. > > As you can see, I > 'd like to use D in an embedded system and don't like the idea to use > garbage collection in a memory-limited device. Just turn off the garbage collector, and do your own (C-style) memory management. Otherwise, you'll have to implement your own reference counting algorithm. That's possible, but difficult (especially if you want to handle loops safely). -- The Villagers are Online! villagersonline.com .[ (the fox.(quick,brown)) jumped.over(the dog.lazy) ] .[ (a version.of(English).(precise.more)) is(possible) ] ?[ you want.to(help(develop(it))) ] |
Copyright © 1999-2021 by the D Language Foundation