[Top][All Lists]

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

[Axiom-developer] RE: Aldor and Axiom

From: Bill Page
Subject: [Axiom-developer] RE: Aldor and Axiom
Date: Mon, 13 Feb 2006 22:19:42 -0500

On February 13, 2006 6:14 PM C Y wrote:
> However, based on your comments below, I would suggest
> the following steps might be immediately useful:
> a)  Post the downloads for aldor on the Axiom site (I still can't
> get through to :-( and the site is slower now) - I think
> this is allowed under the license no problem.

I don't know what is happening with the server. Some days
I can access it and other days not. Is this a good omen or a bad one?
Is it further motivation to proceed with distributing Aldor as part
of Axiom?

I think you can still get an older (v1.0.1) Windows version of Aldor

Here is the version of Aldor we are running the

There is also a version compiled specifically for x86-64 bit (AMD)
hardware that I run on Fedora Core 3:

Note that the license conditions that are part of the installation
are the same as those on the site.

refers to a new version v1.0.3rc1 (release candidate 1) of Aldor but
the link is incorrect. The correct link is:

The dates on the files are 2004-10-30. I have not tried this version

If you need help with the installation, just let me know.

> b)  Let's incorporate aldor into the main Axiom now - if it is firm
> we will be using Aldor (and based on my recollection everyone is in
> agreement Aldor is the way forward over SPAD) lets not wait for the
> legal stuff to finalize - that could take many more months.  We
> could at least do the following:
>   i)  Work out how the Aldor compiler and the lisp structure of
>       Axiom should work together, and make that the default setup.

This was done long ago at IBM. Peter Broadbery has provided patches
for the open source version of Axiom to support Aldor. Tim has
incorporated all of these patches into the more recent version of
the Axiom distribution except the actual build script that creates
the libaldor library. This is available from the Axiom Wiki website:

>       I know the BOOT vs. Lisp vs. Aldor debate could go on, and
>       may yet, but for now let's go with Tim's Lisp work and the
>       current compiler.  I don't (think) those issues
>       will depend on having the compiler source code - am I wrong?

Hmmm... well it's not open source if we don't distribute the source
code, is it? :)

But we could at least distribute Axiom with a fully functioning
build option to integrate with a previously installed binary
version of Aldor.

>       I think I recall it being said that the interpreter needed to
>       be educated about Aldor, for example?

No, this works now.

>   ii) Start retargeting the more important Axiom libraries to Aldor. 
>       Absolute worst case scenario we retarget to SPAD again, and I
>       doubt we will face worst case in the long run.  So let's assume
>       Aldor until proven otherwise, and start to retarget code now.
> Does that make sense, or is it too risky?  I think that's more or
> less what's been going on of late anyway, but it might help to make
> it an "official" project goal so people can be confident they aren't
> working at cross-purposes with the main Axiom project.

I don't think it is risky but I doubt we will convince many people
until they see downloadable Aldor source code.

> ... 
> OK.  On that basis, do my earlier suggestions make sense?

I think we can complete the integration of the Aldor interface
build into the Axiom distribution. One sticky point is that
currently this requires the installation of the Sun Java
development system. Not everyone might want to do this just to
install Axiom + Aldor. But I rather think we should go ahead
with it anyway for now and just make sure that Java is only
required if the user chooses to build the Aldor interface.
> Bill Page wrote:
> > At this point I think we could even safely
> > start distributing the Aldor source code as an (optional?)
> > part of the Axiom source code distribution. We could state
> > clearly up front that the eventual license conditions are not
> > yet finalized but cover simply all bases by provisionally
> > choosing the most restrictive open source licensing - GPL
> > for now. Later this could be opened up to the BSD-style
> > license that covers most of the rest of Axiom, provided the
> > interested parties all agree.
> No, GPL won't quite work - requires complete rights
> to derivative works, IIRC.

No where does it say that reserves *exclusive* rights.
GPL guarantees these rights to everyone, so it certainly
satisfies the original intent of at least the binary/library
source license distributed by

> I think we can just stick the Aldor license with the Aldor
> compiler and leave it at that, for now.  At a guess that
> clause in the Aldor license was included to handle some of
> the same issues I remember being mentioned for Axiom back
> in the pre-code-release days, but that was when I was more
> into Maxima so I confess it's a bit hazy.  

The issue might eventually be who can incorporate Aldor into
non-open source software. At present the Axiom BSD-style license
allows this for Axiom itself but it is not clear to me whether
this is also the intent of Choosing GPL as an interim
license would allow this to be decided at a later date.

> Out of curiosity, does anybody know what the language of the
> Aldor compiler is?

Aldor is written in "C" and Aldor.

> IIRC it can target a couple different languages for compiler
> output(?) but I don't recall what language it's actually
> written in.

Aldor can generate code that runs with a stand alone run time
environment written in "C" or it can generate Lisp. When Aldor
is used within Axiom it generates Lisp that is compiled by GCL
the same way that the output of the SPAD compiler is compiled.

> ...
> > 
> > I would propose that we forget about Aldor's native libraries
> > for now (as nice, though limited, as they are).
> Hmm.  OK, so you suggest we first get Axiom as it stands over to
> Aldor and then proceed with any low level design changes, if any
> are warranted?

Yes. Initially only the Axiom library code written in SPAD would
be converted to Aldor. The rest of Axiom would remain the same.

> ... 
> I know Axiom is supposed to be founded on category theory and/or
> set theory, but does anybody know where the real "core" of that
> logic resides?

That is related to discussion in the earlier thread about the
nature of the SubDomain construction. At least some of this
"logic" resides in the SPAD compiler itself. That could
potentially be a problem in the effort to convert the Axiom
library to Aldor since Aldor does not implement this "logic"
in the same way.

BTW, I do not think that it would be correct to say that Axiom
is founded on category theory as such. The use of the word
category in Axiom is quite different. But still in many ways
Axiom is compatible with many of the ideas of modern category

It is more correct to say that Axiom is founded on set theory
but only is a rather loose way.

> I always figured that was the most fundamental mathematical
> part of the code, but maybe I'm wrong.

Maybe we could agree that it is a kind of exaggeration? :)

> I was kinda hoping Axiom could serve as a modern, computerized
> Principia Mathematica++. (Interestingly, if a first edition is
> available, might it be out of copyright?  Perhaps we could
> incorporate the Principica Mathematica itself, or a variation,
> as a literate document!)

Sometimes your suggestions are quite "nuts" - do you know that? ;)
> ... 
> For Aldor gurus, am I correct that Aldor can target Lisp and C
> as outputs of its compiled Aldor code?


> > > 
> > > a)  Document SPAD compiler, foundations in mathematical theory,
> > > core structures of Axiom algebra
> > > b)  Identify and document "core" functionality, which is to say
> > > functionality which a large part of the Axiom system depends 
> > > on.  Debug code and concepts, possibly implement unit test
> > > framework.
> > > c)  Work our way up the ladder, so to speak.  Higher level
> > > functionality documented as the underpinnings become well
> > > documented and well defined.
> > > 
> > > type of list.
> > 
> > I would replace a) with conversion of the Axiom library to
> > Aldor, but the rest seems great to me.
> OK.  I take it the compiler itself doesn't contain the definitions
> of any of the algebraic types or constructs?

You mean the SPAD compiler? Yes there are some but all of the hard
work has already been done in the design of Aldor. There are some
constructs that don't translate. But (maybe) these are not important
to the goal of converting (most of) the existing Axiom library to
Aldor. (See related thread op cit.)

> ...
> Then I vote for full steam ahead with Aldor - the legal issues
> will take time, but there seems to be some confidence that they
> can eventually be sorted out.  Let's bundle the sucker and start
> some algebra tuning!

I am also in favour of pushing the availability of Aldor as open
source by "jumping the gun" (to use an Olympics-style analogy :)
and releasing Aldor source now with the Axiom distribution. But
I think we have to consider this strategy carefully - particularly
the licensing issues. Unfortunately this is unavoidable. That is
why I would propose to choose a provisional open source license
for the Aldor part of the distribution that would not preclude a
more open license at a later date. Even then, there is a possibility
that this strategy might irritate some people that we really do
not want to irritate. The question is: what is the greater risk
for the Axiom project?

If we continue this discussion of licensing issues, I propose that
we move it to the axiom-legal list.

Bill Page.

reply via email to

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