axiom-developer
[Top][All Lists]
Advanced

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

Re: Axiom musings...


From: Tim Daly
Subject: Re: Axiom musings...
Date: Wed, 7 Oct 2020 18:11:50 -0400

I'm writing a book on the history of Axiom. As part of
that effort I'm reviewing all of the emails posted to the
mailing list. I came across this posting by Scott Morrison,
the author of the interpreter:

Date: Thu, 3 Nov 2005 08:34:55 -0800
From: Scott Morrison
To: list
Subject: Re: BAD tim

Hello everybody,

This is my first posting to this list. I worked at IBM Research off and on
for 9 years. I'm the primary author/designer of the interpreter and
HyperDoc, and I wrote the first code generator and optimizer for Aldor (then
called A#).

I found Tim's posting very interesting, and I just had to comment. (Hi Tim!)

>>POINT 3: Boot is a dead language.
>>
>>   There are approximately 10 people still living who have coded in
>>   boot and every one of them is doing something else with their
>>   life.


Being one of those 10 people, I have to agree with Tim and his opinion of
the Boot language. Dick Jenks told me that boot was to be the first step in
implementing the entire system in the Spad language. Once the syntax looked
like Spad, the next step would be to convert it to real Spad. Of course that
never happened, so the main purpose behind Boot is gone.

In my opinion Boot can be a convenient language to code in, but it has two
main problems. The use of indentation for grouping is just a bad idea. It
works well for one-page programs, but with anything with reasonable
complexity, it falls down. Just adding braces to Boot for grouping would go
a long way to making it more usable. The other problem is the lack of a way
to structure data. I fully agree with Tim on the problems with that
language.

>>I'm the only person likely to be hacking
>>   the interpreter for the near future, mostly because it is so big,
>>   ugly, unstructured, and undocumented.

Ouch. The truth hurts. Believe me, when I started writing the interpreter
some 21 years ago, I never imagined it would have such a long life. This was
my first major programming project out of college. After 20 years of
experience, I would do a lot of things differently today. These days I'm too
busy with my current job (graphics programming at Audtodesk) to be able to
devote any time to the Axiom project.

>>There is no reason (other than historical) why there are
>>   a dozen entry points into the interpreter that set wierd, undocumented,
>>   stateful flags. All that cruft must go away.

Good luck Tim. As the author of much of this cruft, I think you have your
work cut out for you. Maintaining functionality while refactoring the code
will be a major challenge. Your two year estimate seems about right if you
are planning on working on this full time. If not, I think two years is
optimistic.

I think the transition from Boot to Lisp could be done in an incremental
way, converting modules gradually, thus maintaining the integrity of the
system during the conversion. However, I agree that converting to Lisp
ultimately is the right thing to do.

I'm on the axiom-developer list now, so I can answer the occasional
question, but I won't have much time for this project, unfortunately.



reply via email to

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