[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

     Cheers,
     --MarkM



More information about the e-lang mailing list