--- Bill Page <[EMAIL PROTECTED]> wrote:

> Apparently these problems can be solved but only with a radically
> different build approach than is used now in Axiom, as demonstrated
> by the Axiom fork project.

Eventually, my understanding is we will head in a similar direction.

> > Such a trend leads you back to the point where you need a running
> > Axiom to build a running Axiom.  It is an interesting, but
> > academic, problem which is elegantly sidestepped by lisp code.
> >
> 
> What do you think is being side-stepped by lisp code? It could just
> as easily by solved by writing everything in C (gcc bootstrapping not
> withstanding).

Quite true.  However, Lisp (at least in the eyes of some) offers a lot
in a single language.

> If you write everything at the same linguistic level
> (i.e. in the same language) then of course this problem does not
> arise. But you also severely limit your design options.

Actually, all that is needed is to keep a subset of the language you
are targeting defined in Lisp (or whatever) and then keep the rest of
that language buildable from that subset.  So the minimum functionality
that must remain defined at the "base" linguistic level is the
functionality needed to build enough of the new language that the
result can understand the remainder of its own definition.  What
constitutes this minimum subset is actually an interesting problem.  If
I understand correctly, one of the really elegant things about Forth is
that this minimum subset is well understood and quite small, and thus
easily implemented.  What constitutes the minimal subset for Common
Lisp in terms of some other language is not as well defined, but is an
interesting problem that other people have inquired about in the past. 
Possibly, enough of a bootstrap Lisp compiler written in Forth would
constitute a minimal path to a working Common Lisp.*  Then, we have the
same question for SPAD - is there enough benefit to it being written in
itself to merit consideration of the bootstrap problem, or is Lisp
sufficiently capable that it can express SPAD "well enough".

> The consequences seem obvious in systems like Maxima, Maple and
> Mathematica. This difference in design methodology is one of the
> things that sets Axiom apart.

I would have thought the major difference there would be Axiom's strong
focus on being correct as a first order priority.  How do you see
languages written in themselves as setting Axiom apart?

Cheers,
CY

* I'm actually trying to get ahold of an old thesis on implementing a
small Lisp in Forth - I know most folks on the Axiom project won't be
interested, but Bare Metal -> Forth -> ANSI CL is an interesting
possibility to me as "future proofing" against the bootstrap problem. 
Of course, there's also the CADR Lisp Machine information at MIT, which
is also very interesting :-).


       
____________________________________________________________________________________
Take the Internet to Go: Yahoo!Go puts the Internet in your pocket: mail, news, 
photos & more. 
http://mobile.yahoo.com/go?refer=1GNXIC


_______________________________________________
Axiom-developer mailing list
Axiom-developer@nongnu.org
http://lists.nongnu.org/mailman/listinfo/axiom-developer

Reply via email to