axiom-developer
[Top][All Lists]
Advanced

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

Re: [Axiom-developer] Axiom Development


From: root
Subject: Re: [Axiom-developer] Axiom Development
Date: Sat, 26 Oct 2002 11:13:11 -0400

>Philippe Toffin wrote:
> I am philippe Toffin; I have been working with Axiom for many years,
> mainely because I like very much this high generality level in wich one
> can work; there are many things which are bad, as the low level of errors
> detected explainations by the compiler, or the uses of different names of
> the same functions by the compiler or the interpreter etc...
> I do not really know if I can help you, but it would be more on the math
> algorithm side rather than writing things for specified plattforms.
> Actually, I have the Axiom 2.3 for linux version, but it is not properly
> or not completely installated. A friend of mine is going to do it, soon.
> Anyway, I think that the basic ideas at the beginning of Axiom were good
> ideas, and I still think that it could become an excellent computer
> algebra sofware.
> Please excuse my very inperfect english.
> best regards
> philippe

Philippe,

At the moment the new version of Axiom is still being built.
There are challenges to setting up the system so it can be built
automatically by anyone and the system is built on a lisp (CCL)
that is different from the original (AKCL) so the initial step
has been progressing slowly. I have, however, succeeded in building
the lisp image and integrating it into the build makefile tree cleanly.
I'm much more familiar with the rest of the process so it should go
faster. The first version will be on Linux but I'll be looking for
people who have other kinds of systems and are interested in the
drudge-work of porting.

If you're interested in the algebra but don't have an Axiom system
available the key contribution you can make is to choose a particular
algebra file or two and attempt to document them. The algebra suffers
from the fact that the research papers and reference material necessary
to understand the algorithms are hidden in research libraries. The
plan is to use "noweb" (http://www.eecs.harvard.edu/~nr/noweb) and
a literate programming style to document each of the algebra files.
I can post a first example if you want to see what this would involve.
noweb allows you to mix tex and source code in the same file. It is
basically tex with a few extra tags. You can then write a "pamphlet"
that describes the algebra in detail, including the actual code.
You run:
  notangle foo.pamphlet >foo.spad
  noweave  foo.pamphlet >foo.tex
and you get the original algebra code in foo.spad and the description
of the algebra in foo.tex.

Or you can take a broader view and construct a bibliography list for each of
the algebra files. We will need to do background research to find the
primary materials for the algebra code. Some of it is from books and some
of it is from papers. Axiom is primarily a research platform for 
computational mathematics and leading edge research is mostly found in
papers (although by this time it will have shown up in textbooks).
We need to find the original authors of the code and ask them for
references.

If you get Axiom running there are several things you can do. One is
to start sending bug reports. Be sure to include the line that caused
the failure, the actual output and the expected output. We need to
find the flaws and fix them. One of the key features of open source
is supposed to be the speed with which things get fixed. Hopefully
Axiom will keep that tradition alive.

A second task is to develop example/test cases. There is a directory
(src/input) that has example files and was used for regression
testing. It is hardly changed since the system was shipped. We need
much more coverage of the algebra. Indeed, we need to structure the
tests so we can decide what is and is not covered, at least in a 
minimal way. Many people develop input files to check their work
and throw them away. These are valuable in a more general sense and
we need to encourage collecting, categorizing and documenting them.
There are portions of the algebra that would be a lot easier to use
if there were examples. You could look at Hypertex and construct pages
that help the end user. Hypertex pages are fairly simple to write.

A third task would be to develop new algebra. If you have expertise
in some area that the algebra doesn't cover and understand the algorithms
it would be useful to propose new code. I expect that the criteria for
accepting new algebra will be challenging because we have to be careful
that the new code is correct, well documented, well tested, well
reviewed (like technical papers, I hope to see a list of reviewers) and
that it plays well with the rest of the system. There are huge areas of
mathematics that are never mentioned in Axiom so this is a fertile field
of work.

There are more tasks to think about and I'm open to suggestions for new
ones. Check out the main page (http://savannah.nongnu.org/projects/axiom)
or the homepage (http://www.nongnu.org/axiom) for further ideas. The main
thing is to figure out how you can best contribute.

Tim

P.S. Your english is fine.




reply via email to

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