[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Axiom-developer] RE: FW: summer of code
[Axiom-developer] RE: FW: summer of code
Fri, 13 Apr 2007 23:38:19 -0400
[Warning: The following contains mostly philosophy and opinions.
If your interest is purely technical, you all know where the
delete key is on your keyboard... ]
On April 13, 2007 8:33 PM Ondrej Certik wrote:
> So it's almost certain that Python is going to be around for
> couple of years, but in the 25 years horizon, it's actually
> pretty clear it will not, at least not in the current form.
It feels rather odd to me to be able to point out that Lisp
is well past that original 25 year horizon and it is still
essentially the same language as it was - dialects and various
libraries not withstanding.
> However, if my program [SymPy] is not going to be used anyway
> in 25 years, or only marginally, I prefer to have something
> good today and attract people today, not tomorrow.
When I started with the Axiom project (nearly 5 years ago) I
was at first a little amused by Tim Daly's insistence that one
should look at Axiom as something with (at least) a 30 year
horizon. That didn't seem credible to me at all.
But then what we are really talking about here is mathematics
and many of the algorithms that we are implementing in our
computer algebra systems are actually based on mathematics that
was developed as much as a *hundred* years earlier. Perhaps
Lisp is a little like that - more mathematics than a trendy
So I wonder about Axiom. Are the design principles on which it
is based firm enough to be relevant over the long haul? Perhaps.
I have serious doubts that the principles on which Maple and
Mathematica are based will stand this long. In fact during the
time I have known them, they both seem to be converging toward
And here Axiom is now, nearly 30 years after it's inception. But
then Maxima (formerly Macsyma) is a system of the same time period
as Axiom and it is still alive today. We need something else to
> Do you have some estimate, how successful Axiom was in 1980s,
> when lisp was quite more popular, than it is today?
It is difficult to talk about "popularity" because the situation
(as you say) was very different. But actually there are probably
more lisp programmers today then there was then just like there
are more horses in North America now then there was prior to the
era of mechanization of agriculture motor vehicles. Axiom was
certainly one of the premier computer algebra systems of it's
time - because it was (almost) the only computer algebra system.
And if you will permit me to distinguish between computer algebra
and symbolic computation, then it is still (almost) the only
computer algebra system. It was and still ahead of it's time.
> It's an unfair comparison, because something like SymPy wouldn't
> be possible without the internet and open source and if I lived
> in 1980s, I wouldn't even started anything like that, because
> I wouldn't have means of spreading it to people and especially
> getting anyone interested.
But I think it is a fair comparison because the same things are
true about Axiom. Axiom would not be here today if it was not
for open source and the Internet. In fact nearly 30 years of
research effort was saved largely because it became possible
to make it public rather than simply die like a lot of other
commercial software packages.
> Today's situation is incredible - it's enough to write a code,
> put it on the web, create some documentation and it will start
> living on its own if it is good enough, because people will
> find it in Google.
I agree it is incredible but I have serious doubts about the
rest of your claim. I don't know what "good enough" means. I am
afraid that your model of development means just a lot of people
re-inventing the same thing in essentially the same way according
to the current fashion. I think that is a form of entertainment
but not real progress.
The way Axiom started was probably very similar expect for the
much smaller scale. It exists because a small number of people
where able to interest a larger number of people and a company
with enough resources like IBM. We are incredibly rich in
resources these days, but the critical part is still finding
the right people with really new ideas.
On the other hand, Axiom as a project with a 30 year time
horizon is very different. The system design on which we are
working today is essentially the same as the one originally
envisaged nearly 30 years ago. Besides saving 30 year of
intellectual effort from the trash bin, we are mostly trying to
carry on the same programme: to encode more mathematics in the
form that can be manipulated by a computer and at the same time
trying to "sell" the basic idea to people who have not yet
realized that the problem it is trying to solve even exists!
I like Python and I am glad that people are interested in it,
but I prefer to focus on the larger picture in order to see
how it fits into the long term. And I think that Python, SymPy,
Sage and Google's summer of code all have a role to play even
if that ends up by just getting more people interest in the
main subject - computer algebra.