[Ecls-list] ECL output Java bytecode?

Erik Huelsmann ehuels at gmail.com
Mon Jan 14 14:12:14 UTC 2008

On 1/12/08, Robert Dodier <robert.dodier at gmail.com> wrote:
> Hello,
> It appears that ECL includes a Lisp->bytecode translator.
> >From looking at the list of opcodes (I forget which file I looked at)
> the ECL bytecodes seem to comprise a subset, more or less,
> of Java bytecodes. I wonder if ECL could be modified to output
> Java bytecodes, either by translating ECL bytecodes to Java
> bytecodes or generating Java bytecodes directly.
> The immediate goal, for me, would be to run Maxima (a computer
> algebra program written in Lisp) on a JVM. I am sure there are
> many other Lisp programs that could usefully be run on a JVM.
> I have looked at other options for running Lisp programs on a
> JVM and unfortunately the prospects are slim. There is ABCL
> which is a Common Lisp implementation written in Java, but
> it is unfinished and the project is dormant. Clisp outputs bytecodes,
> but the Clisp bytecodes are very different from Java bytecodes.

What do you mean by "unfinished"? I mean they announce to be "not as
fast as could be" in the CLOS department, but that requires someone
with an itch to do something about it.

What do you mean by "dormant"? My experience is that when you have a
patch or questions, there are quite a number of people on their
mailing list which will try to help you out.

Even more so: there are quite a number of people using ABCL in their
servlets to do "the lispy stuff", indicating to me the implementation
is quite useable. Are there any areas which are underdeveloped, as far
as you've experienced?

> Aside from ABCL, there are other Lisp implementations written
> in Java but from what I can tell there are no other Common Lisp
> implementations.
> If you have any comment I would be glad to hear it.

Well, if you're going to take Juan's advice and rewrite the C runtime
to Java, then you'd probably be faster to resolve any outstanding
issues in ABCL. (As a matter of fact, you could join me, because I
expect to start using ABCL in the next months for an application I'd
like to be able to roll out into production...)



More information about the ecl-devel mailing list