Clementson's Blog

Bits and pieces (mostly Lisp-related) that I collect from the ether.

July 2004
Sun Mon Tue Wed Thu Fri Sat
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Jun  Aug

CL to Java - Part 3

Wednesday, July 7, 2004

In earlier postings ( here and here) I discussed some of the alternatives for working with a mixture of CL and Java code. By private email, David Lichteblau let me know of an alternative approach that he has been working on: Cloak - a JVM in CL. David has kindly sent me a copy of a presentation that goes into more detail about his effort. Some of the key differences with this approach to CL-Java interoperability are:

David is using SBCL to develop Cloak. The problem with using SBCL is that the compiler is slow and there is only thread support on Linux/x86. Since the bytecode is compiled to Lisp and run through the CL compiler, slow compiler performance is a big issue and SBCL is too slow for JIT compiling of the Java bytecode. CL thread support is needed in order to provide thread support for Java; therefore, although Cloak is fairly portable, the availability of SBCL thread support on only the Linux/x86 platform means that Java thread support is only available on that platform as well. In order to provide standard Java library support, he is using the open source GNU Classpath libraries.

At this stage, David's JVM implementation is still incomplete and the main issue is performance. Still, his approach is an interesting and (yet another) alternative way to interoperate with Java code from CL.

emacs Copyright © 2005 by Bill Clementson