axiom-developer
[Top][All Lists]
Advanced

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

Re: [Axiom-developer] axiom on cmu cl


From: root
Subject: Re: [Axiom-developer] axiom on cmu cl
Date: Mon, 28 Apr 2003 20:22:23 -0400

I probably sent you the tape you were using. Do you happen to still have
the original sources around? Is it possible to tar them up and put them
somewhere I can reach? My original sources are gone, IBM no longer has
any, and NAG has them on exabyte tapes but no longer has an exabyte tape
drive. 

It would be most useful to be able to diff the current sources with the
originals. It would speed up the debugging considerably. NAG rewrote
some of the inner routines in CCL specific ways and I've been unwinding
those changes.

As to the layers of parsers, compilers, redundant code, etc...

Yes, it all needs cleanup and rethinking. The Aldor compiler was originally
supposed to be in common lisp and was intended to replace the parsers and
compilers in the system. A decision was made to make it external and write
it in C instead.

There are many layers of cruft. The original code was a "chrybdis"
printing system from the 1960s and parts of it still survive. If you're
an ex-maclisp, vm/360 lisp or vm/370 lisp speaker you'll see idioms from
those languages also. There will eventually be a field called software
archeology and Axiom will be its major treasure trove.

Several times while working on the code I rewrote sections to make it
much cleaner but there were limits on what I was allowed to do. Those
limits no longer exist so the time has come to clean it up.

The first step, however, is to get it to run as most of the users don't
care how it works, only that it does work.

The second step is to document what's there and understand it better.
It is very easy to break the system if you modify the lisp without
understanding so the effort to document it is important.

Step three is to understand how it should work, write a literate document
that explains it and contains new code to replace the old functionality.

The plan is to take what I consider the best algebra system and make it
the best it can be.

Tim




reply via email to

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