[e-lang] Re: [ANN] E-on-Common-Lisp now available

Mark Miller markm at cs.jhu.edu
Tue Apr 19 10:19:14 EDT 2005

James Graves wrote:
> I am very interested in the question of how far down the E concepts path 
> we can go, while retaining compatability with Common Lisp.

It's been many years since I've been in the world of Lisp, but here's the 
off-the-top-of-head thoughts:

Identify a small (hopefully Scheme-like) kernel language, Kernel-CL, such that 
the rest of Common Lisp can be implemented in this kernel.

For the truly Scheme-like subset of this kernel, Kernel-CL0, solve for 
Kernel-CL0-E, in

     Scheme is to W7 as Kernel-CL0 is to Kernel-CL0-E

For each remaining feature in Kernel-CL, either throw it out or ensure it is 
consistent with capability rules and discipline; or transform it into 
something which is. Call this Kernel-CL-E.

Most of the work, as always, will be: Tame the libraries, hopefully by 
removing rather than hiding the bad stuff. All the remaining libraries should 
be written in Kernel-CL-E.

The above is a rather generic formula. The specific steps that would I suspect 
would cause the most hair pulling among Common Lispers:
* The default cons operation must make immutable cons cells.
* The CL package system for managing the top level name space is screwed, and
   must go.
* Likewise, CLOS must go.

It seems to me this should all be doable, while retaining enough similarity to 
Common Lisp to be able to run many existing Common Lisp programs.

Text by me above is hereby placed in the public domain


More information about the e-lang mailing list