On 5/19/05, Stefano Mazzocchi <[EMAIL PROTECTED]> wrote:
This is why I would like Harmony to have two VMs, one written in java and one written in C-or-friends: this would give us
Well, I suspect if we design the interfaces correctly, we could do the above with one JVM instead of two. Two competing Harmony implementations means ultimately one of them must die. Harmony really needs one quickly evolvable code base.
I'm not sure I believe that - it seems entirely plausible to me that versions with different targets can happily coexist. This is particularly true if we succeed with the modularity aim - look at httpd - there are several different ways to do any particular thing, and with good reason. Obviously there is some immutable core, but that's relatively small.
The concept is to write the JVM in 100% C/C++ today. Rationale: C/C++ is battle tested for building OS and compiler systems. Set a goal of rewritting the JIT in Java/C# by 2007. If IT shops are happy deploying Harmony with the JIT written in Java, then set a goal of rewriting 90% of the VM in Java/C# by 2009.
You'd still need the bootstrapping non-Java VM for this, wouldn't you?
1) the goal of making things modular enough to allow to swap things around and allow parallel development
Yes! Although it will be more challenging to create interfaces that will work for both Java and C/C++, I suspect the end result will be worthwhile.
Geir and I have been discussing this, I think we should try to put together a more concrete proposal.
Cheers,
Ben.
-- http://www.apache-ssl.org/ben.html http://www.thebunker.net/
"There is no limit to what a man can do or how far he can go if he doesn't mind who gets the credit." - Robert Woodruff