Newsgroups: comp.lang.lisp,comp.lang.clos
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!newsfeed.pitt.edu!portc02.blue.aol.com!portc01.blue.aol.com!cliffs.rs.itd.umich.edu!howland.erols.net!news.bbnplanet.com!cam-news-hub1.bbnplanet.com!news.mathworks.com!fu-berlin.de!news-ber1.dfn.de!news-ham1.dfn.de!news.dkrz.de!news.uni-hamburg.de!news.Hanse.DE!wavehh.hanse.de!cracauer
From: cracauer@wavehh.hanse.de (Martin Cracauer)
Subject: Re: Do something. Now.
Message-ID: <1996Dec24.140316.10025@wavehh.hanse.de>
Reply-To: cracauer@wavehh.hanse.de
Organization: Private site
References: <3059948144828413@naggum.no> <851066309snz@wildcard.demon.co.uk> <GJR.96Dec20105752@hplgr2.hpl.hp.com> <851174617snz@wildcard.demon.co.uk> <joswig-ya023180002112962143090001@news.lavielle.com> <1996Dec23.134611.24448@wavehh.hanse.de> <851429015snz@wildcard.demon.co.uk>
Distribution: inet
Date: Tue, 24 Dec 96 14:03:16 GMT
Lines: 55
Xref: glinda.oz.cs.cmu.edu comp.lang.lisp:24395 comp.lang.clos:4115

cyber_surfer@wildcard.demon.co.uk (Cyber Surfer) writes:

>In article <1996Dec23.134611.24448@wavehh.hanse.de>
>           cracauer@wavehh.hanse.de "Martin Cracauer" writes:

>> Implement a Java virtual machine in Common Lisp. Should not be that
>> hard given a thread interface (most other problems like GC and dynamic
>> loading are solved in every Lisp implementation anyway). Even a
>> Just-in-time-compiler will be easy (and working $#%$^&%^).

>I like the idea of using a user interface (IDE?) built using Java,
>comunicating with the Lisp system via sockets. That way, you get
>an IDE that runs on every platform that has a JVM. If you don't
>wish to use Java, an alternative might be Kawa compiler, for
>compiling Scheme to JVM bytecodes.

Emacs with ilisp is just that. Emacs is just the virtual machine you
can put on most platforms (many more than Java), ilisp is written to
run on that VM.

The problem with such solutions is that a *tigher* integration of Lisp
and environment tools is needed. The right program inspection tools
will need access to the Lisp image. The Lisp machine, Harlequin
Lispworks, CMU's Hemlock and probably others do so (the Dylan
environment from CMU will beat this to its limits, I'm sure).

>It might be nothing more than a JVM-based widget server, but that's
>a great (and cheap) way to make an IDE portable.

No, I'd say it is completly pointless.

>It should be ok for the user interface, and a JVM that uses JIT
>should beat any performance concerns. If that's not enough, write

Anyone who things a JIT can push Java's speed to that of C hasn't read
the specification of the Java VM. That is not possible. It is possible
to compile Java to native code without using .class files or the JVM,
but once you have a class-file, you have to obey the execution model
of the JVM. And that has efficiency drawbacks.

>a "native" version. This is an old idea, but I don't see why it
>can't use the JVM, instead of less widely available bytecode engines.

The JVM isn't a widly available bytecode engine. Emacs and Scheme-48,
to name two, are much more widly available (by platform count, that's
what is important for the tools *I* use). The Java VM is availiable
inside of Web browsers and that opens a lot of application
possibilties, but an environemt for Lisp is not one of them.

Martin
-- 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Martin_Cracauer@wavehh.hanse.de http://cracauer.cons.org  Fax.: +4940 5228536
"As far as I'm concerned,  if something is so complicated that you can't ex-
 plain it in 10 seconds, then it's probably not worth knowing anyway"- Calvin
