axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-developer] Boot


From: root
Subject: Re: [Axiom-developer] Boot
Date: Mon, 2 Oct 2006 10:51:27 -0400

> > A total rewrite in lisp with defstruct et al. of the whole system
> > is too ambitious for the number of people contributing. Besides,
> > for a total rewrite one should consider other alternatives as
> > well (aldor, ...).
> 
> I still wish for this but I am afraid that is controlled by
> people with a different agenda.

controlled? open source is the ultimate "herd of cats".
work on anything you want, any time you want, any way you want.
everybody has the same source access.

as for a different agenda... the interpreter was written originally
in a version of lisp that predates many, many language improvements,
e.g. defstruct. the interpreter behavior is controlled by a lot of
random top-level state variables. it contains duplicate code, 
redundant code, partial implementations, simulations of other lisp
dialects (e.g. NRLIBs), etc. and it lacks documentation.

the interpreter is only one part of axiom and is the part that i
am most qualified to clean and document (since i'm the author of
that code). frankly the code is personally embarrassing and i'm
going to clean it up as a matter of personal redemption.

lisp is the implementation language of the interpreter and has been
since the early 70s timeframe. coding it in lisp is not a departure. 

boot is an experiment in a paren-less lisp syntax. one of hundreds.
if we wanted to use paren-less lisp syntax we should adopt python.
but, as a lisp programmer, i understand that people who advocate
paren-less syntax simply "don't get it". and i've learned that you
can't convince people about it, they must learn it themselves.
once you "get it" you'll never go back.

you'll discover that you can't rewrite portions of the interpreter in
either boot or python because they can't do the source-to-source
transformations like defmacro and backquote. the interpreter lives
to do source-to-source transformations.

and as for wishing...  you don't need to wish. if you rewrite the
interpreter in boot and it is better than the lisp version it will be
adopted.

t





reply via email to

[Prev in Thread] Current Thread [Next in Thread]