|
From: | Etienne M. Gagnon |
Subject: | Re: Re (3): testing before a release |
Date: | Thu, 08 Nov 2001 09:12:00 -0500 |
User-agent: | Mozilla/5.0 (X11; U; Linux i586; en-US; rv:0.9.5) Gecko/20011023 |
Chris, Chris Gray wrote:
Assuming your VM is written not in Java but in some other language such as Haskell or Forth, it can't really "use" a class file the way it would use its usual libraries: all it can do is *process* the class file.
In the case of Java, usually one writes the core parts in some language other than Java (not always: see the jikes RVM [in this case you have to generate a platform specific boot image, though]), but writing a whole Java VM involves much more than simply interpreting bytecodes. The VM must also verify bytecode, support dynamic loading, support threads, etc. A complete Java VM has to collaborate with such classes as Thread and ThreadGroup (and many others); this interaction is not always in the direction of library-calls-vm. So, it is far from unusual that some major post-bootstrapping parts of the VM are written in Java (verifier, JIT, profiler, etc.). Because of this, licensing any library class under the pure GPL has serious consequences, which are incompatible with the goals of nost Free VMs out there (except probably Kaffe;-).
Etienne -- Etienne M. Gagnon http://www.info.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/
[Prev in Thread] | Current Thread | [Next in Thread] |