Colin likes D; the real universal virtual machine
Colin Walters writes that he likes D, the latest installment in what tridge calls the Tool of the Month Club. (Send no money now!) I have to say I like the elevator pitch, but I haven't tried it and I am a bit skeptical whether there is enough of a niche there for it to survive. We shall see.
One interesting thing is that D is not based on a virtual machine, which is a core feature of Java. (I guess you can compile Java to native code using something like gcj, but this is not a very common scenario at the moment.)
[These are kind of sketchy; it's a blog; don't shoot.]
There is already a standard virtual bytecode format; we don't need Java to introduce another. It's called x86 machine code. In fact people have already developed very efficient hardware implementations...
I'm wondering if most of the arguments for using a platform-neutral bytecode could still be achieved if that bytecode is x86: security is mostly about whether code can have access to system resources (files, other processes, the network). So block what system calls it can make. Running untrusted native code under SELinux is safe because it enforces security on the boundary. I'm sure more work can be done here in allowing something like a native applet.
Crusoe is something like a JIT for x86, and there are others for ia64, Alpha and other platforms. Perhaps a higher-level intermediate language makes it easier...
Perhaps garbage collection is something that should be done at a lower level than the compiler output.
You can mix languages in a single program to some extent with JVM or common intermediate language. On the other hand you can do that too with C and Python, Perl, Scheme, etc, and use this to good effect to implement alternate hard and soft layers. More complex systems might be better off running as separate communicating services than being jammed into a single program.
There is a good essay that discusses this idea, but I can't find it anymore amongst all the other good Java rants out there.
posted Wed 28 Apr 2004 in /software/languages/D | link
Archives 2008: Apr Feb 2007: Jul May Feb Jan 2006: Dec Nov Oct Sep Aug Jul Jun Jan 2005: Sep Aug Jul Jun May Apr Mar Feb Jan 2004: Dec Nov Oct Sep Aug Jul Jun May Apr Mar Feb Jan 2003: Dec Nov Oct Sep Aug Jul Jun May
Copyright (C) 1999-2007 Martin Pool.