axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] Re: GCL-2.5.3


From: root
Subject: [Axiom-developer] Re: GCL-2.5.3
Date: Tue, 30 Sep 2003 16:35:57 -0400

re: making sense.

Yes and no. 

It would be nice if Axiom ran on any common lisp without changes but
there is no common lisp spec for sockets so every lisp will have to be
rebuilt with socket support.

Furthermore the lisp build is actually just a few minutes of the whole
build so the "overhead" of rebuilding is low. And, in fact, the lisp
will never be rebuilt if you don't change versions so it is a one-time
event.

Still further, having Axiom do a custom build of the lisp ensures that
we have a working version that is known to be correct.  Running on
random lisp images can be problematic since Axiom sets up things like
memory layouts (see the src/interp/Makefile.pamphlet). These are
needed because otherwise Axiom will run inefficiently due to consing.
Other lisps will require similar tuning.

Axiom also runs faster after the "second compile". That is, if you do
a build and then rebuild the src/interp directory Axiom will run
faster. There are .fn files in the INT directory and these contain
type information which GCL can use to "fast path" the system
calls. They are generated at the first compile and used during the
second. It is "in plan" to force a rebuild of src/interp in order to
build the fastest possible image.

The noweb image is changed from the original and is "in plan" to
have much deeper changes to support new pamphlet/booklet features. I
talked to Norman Ramsey, the author of noweb, and he wants to keep his
distribution as simple as possible so changes aren't going to migrate
back to the noweb distribution. It probably won't be named noweb in
the future so we don't collide with Norman's work.

Upcoming but not yet part of the build is a deeper use of other packages
like ADVI. These packages will have modifications that are almost 
certainly not going to get picked up by the general distribution. In
particular, with ADVI, we need to build a "browser-like" hyperlink 
ability and a front-end that can handle table-of-contents and outline
forms. Axiom will have thousands of pamphlet files that are cross-referencing.
ADVI is going to have to know what a pamphlet file is, how to build one, 
how to walk one, and how to move among them. Thus there is an Axiom-ADVI
in the future plan.

It would be great if you could just fire up a common lisp, load Axiom and go.
We could do that now with the current subset if some careful planning and
rewriting were done. But the current system is only about 1/3 the size of
what it will be next year and future plans call for even more complexity.

However, it is good to review the patches and see if they can be back-ported.
I've only patched the lisp as a last resort. Perhaps you can figure out ways
to eliminate the need to patch (e.g. how to add EXTRAS).

I downloaded GCL-2.5.3 last night (the last tar.gz) and I also downloaded
the CVS. Where did you find 2.7.1?

Tim




reply via email to

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