[Top][All Lists]

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

[Axiom-developer] RE: Aldor and Axiom (was Re: What is SubDomain)

From: Bill Page
Subject: [Axiom-developer] RE: Aldor and Axiom (was Re: What is SubDomain)
Date: Mon, 13 Feb 2006 15:21:23 -0500

On February 13, 2006 2:42 PM C Y wrote:
> That said, if Tim has already redone a given part in Literate
> Lisp, it's not worth redoing his work in Aldor for the foreseeable
> future - work of that quality can't be easily duplicated and for
> certain aspects of Axiom Lisp is in fact a good match.

I am quite sure Tim has not touched this part (i.e. the SPAD
compiler's implementation of SubDomain) yet. Tim? Converting
this stuff to working Lisp (other than just keeping the Boot
generated Lisp), would be a **major** task with little obvious

> .. 
> I can't help wondering if the material in the Reference section
> of the Aldor Users Guide might be enough for us to define at
> least a basic Aldor compiler in Lisp, and build on that.

This suggestion has been made a few times so I think it's time
I said that I think it is utterly ridiculous. There is **zero**
change that we could find experienced Lisp resources to implement
this idea. I think that someone could only make this suggestion
if they have **zero** experience with implementing a compiler.
Repeating this suggestion seems to me to be almost bordering
on the "irresponsible". (Sorry Cliff, I don't mean to sound
too harsh but we have so few resources working on Axiom that I
worry that such unrealistic ideas can only serve to divert our
attention from what we can actually accomplish.)

> If I'm understanding correctly, most of what we would like to
> use from Aldor actually is available in source code form, with
> the BSD+extra rights for license?  And the most critical,
> libaldor and libalgebra, are Manual Bronstein's work and might be
> releasable under plain Modified BSD without having to unravel the
> knot?

No, I think this is the wrong way to think about the problem.
The problem of licensing and is minor compared to re-
implementing the Axiom library from the ground up.

> ... 
> Would it be a forlorn hope that, if Aldor is easier to learn
> because there are only a few language constructs, its compiler
> might also be easier to define?

Have you looked at any of the statistics about the existing Aldor
compiler? Number of lines of code? Time and number of people it
took to do the initial implementation?

> ...
> Ralf wrote: 
> > Having for a while two branches while adding code from Axiom to
> > the Aldor libraries. That is a lot of work, but I would feel
> > better concerning the foundations of the domains and categories
> > in Axiom.

Axiom vs. Aldor libraries is only half the problem and the Aldor
libraries are currently maybe only about 10% of the solution.
The other half of the problem is the Axiom interpreter which
encodes a great deal of knowledge about the Axiom library itself.
Right now they are tightly couple and one could not throw away
the Axiom library without also throwing away the interpreter.
> ... 
> > What I really don't like is that in Axiom sometimes information
> > is added by the compiler/interpreter which does not exist in the
> > .spad file itself.

The Axiom interpret does this by design.

> > Type information that is guessed by the compiler is just an
> > example.

Could you give an example where type information is "guessed" by
the SPAD compiler?

> Hmm.  But aren't there some cases where you want this, like
> (say) knowing that 4 is a real integer without having to
> explicitly say that? (Sorry that's probably a dumb question).

The phrase "real integer" is kind of dumb ... :) What other kinds
of integers are there? But the symbol 4 can certainly stand for
other things besides the integer 4. But in the user interface,
such as implemented by the Axiom interpreter, it is quite natural
that unless stated otherwise, this symbol could be assumed to
represent the element of the positive integers. On the other hand,
in the SPAD and Aldor compilers, there should be no "guessing"
of this kind.

> I think a tutorial on moving SPAD code to Axiom will eventually
> be a must.

There already is such a tutorial as part of the Aldor documentation.
Converting SPAD to Aldor is usually very simple. There are just a
few subtle cases such as the SubDomain construct that we have been

Bill Page.

reply via email to

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