axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] RE: Conference


From: Bill Page
Subject: [Axiom-developer] RE: Conference
Date: Thu, 12 Oct 2006 22:36:42 -0400

Alfredo,

On October 12, 2006 11:57 AM you wrote:
> 
> Hi Bill,
> 
> Wondering if you are back from Sage Days, and how did it go?

Yes, I am back. I would say that it went "well". And I have a
lot more to write about it when I have more time and energy -
maybe tomorrow.

In short: The Sage developers are certainly an enthusiastic,
energetic and ambitious group. I think Sage development benefits
greatly by being based in a university post-graduate environment
and with a lead developer who seems very much "in-tune" with
current open source development practices. I wish Axiom had an
active sponsor of this kind...

But I was also a little disappointed because although one of
the main slogan's of the Sage project goes something like:
"We are inventing the Car, not re-inventing the Wheel", it seems
to me that there is a danger that Sage development has already
started to slide down the slippery slope to that part of any
system that necessarily touches the ground. :-)

I think one of the main contributions of Sage to computer algebra
so far has been to demonstrate that it is possible to produce a
system in a widely used modern high level language (Python) which
incorporates and integrates a diverse group of existing computer
algebra systems into a coherent whole. In principle this permits
one to learn a single user interface language but still benefit
from the huge intellectual (and often financial) investments into
these other systems. I am very much in favour of building this sort
of bridge as a way to preserve and benefit from this prior work.

Of course Sage needs some native symbolic computation ability in
order to serve this intermediate role. But following the initial
success at this endeavour, it seems that it is nearly impossible
to resist the urge to attempt to re-implement in a more "Pythonic"
way, the same features that are already available in the base
packages.

For example, there was a lot of discussion at the meeting about
implementing Padic integers as a computational domain in Sage.
I don't know anything about Padic integers but during a quick
presentation of the new Axiom interface that I wrote during
the coding sprints I demonstrated that Axiom actually already
implements at least one of the methods of representing Padics
that was being discussed. Of course, as Axiom developers we
already know that the Axiom algebra library covers large (and
sadly, mostly undocumented) area of computational mathematics.
I do sincerely hope that making Axiom more accessible to the
Sage developers will help prevent some re-invention of these
"wheels".

At this meeting there was a lot of talk about the need to
write Sage-specific code using Pyrex (Python to "C" compiler)
http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex
for such things as linear algebra and efficient exact integer
arithmetic. And even discussion about the possibility of modifying
Pyrex to make it a more suitable compiler language for Sage.
As interesting as these projects might be to the current Sage
developers, to me this seems to be a path too near the old
slippery slope.

> Sorry I was not able to go...the real world hit me in the
> face :-S.

Yes, life does seem to that to do that to us sometimes. ;) I
hope things improve for you. I am sure you would have enjoyed
the meeting.

> 
> I saw that in the Sage Wiki that you have a prototype of the
> interface Axiom/Sage.

Yes. You can run it on axiom-developer.org although it is
still very preliminary and easy to break. Try it like this:

  $ sage

--------------------------------------------------------
| SAGE Version 1.4, Build Date: 2006-10-05             |
| Distributed under the GNU General Public License V2. |
--------------------------------------------------------

experimental

sage: ex1=axiom('x^%i')
sage: ex1

   %i
  x
 
Type: Expression Complex Integer

sage: ex1.integrate('x')


      %i log(x)
  x %e
  -------------
      1 + %i
 
Type: Union(Expression Complex Integer,...)

sage: exit

The preliminary code for the Axiom interface is here:

http://sage.math.washington.edu/home/page

It is a patch to the latest 1.4 release of Sage.

> 
> Were you able to distribute DoyenCDs at the conference?
> 

I did discuss the DoyenCD during the last part of my talk
(when you were scheduled to speak!). There was some interest
but it was clearly not the focus of most of the people at this
meeting. Most of the people there were Sage developers - not
Sage users - and most were experienced with building and using
Sage from scratch in the Linux environment. Given a need, they
would also probably build Axiom in this manner. So a LiveCD is
only of strategic interest as a means of making Sage (and other
computer algebra software) more accessible to less experienced
users. So in the end I did not distribute any copies of the CD.
But perhaps that is a good thing since we should soon have the
new version of the CD which includes Sage support in the Doyen
wiki. Right? :-)

Regards,
Bill Page.






reply via email to

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