axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] Re: [fricas-devel] Re: [sage-devel] Re: [fricas-devel]


From: Ralf Hemmecke
Subject: [Axiom-developer] Re: [fricas-devel] Re: [sage-devel] Re: [fricas-devel] Re: Project
Date: Sun, 20 Apr 2008 20:15:05 +0200
User-agent: Thunderbird 2.0.0.12 (X11/20080213)

Hi William,

On 04/20/2008 05:29 PM, William Stein wrote:
 >  On Sun, Apr 20, 2008 at 3:10 AM, Martin Rubey <address@hidden> wrote:
 >  > I don't have the guts to send this to a public mailing list.  I probably
 >  >  should.  If you want to, you have my permission.
 >  >
 >  >
 >  >  "Alfredo Portes" <address@hidden> writes:
 >  >
 >  >  > >  Axiom is so huge, so if Sage would be a part of Axiom that just 
handles
 >  >  > > the web interface, why not?

The part of Sage that deals with the web interface is written
in pure Python and depends only on Python, Twisted, and
Pexpect.   At present it is somewhat tightly integrated into
the Sage distribution.  But this is only *temporary*, which
we intend to change in the future, most likely this summer.
Thus if you just want to have an Axiom GUI and or web notebook
interface, you could just ship or depend on

     Python+Twisted+Pexpect+a small part of Sage.

Oh, that looks interesting. The question is, who is going to implement that? Are there any volunteers around?

I don't understand the Axiom distribution enough to understand
how big it is, but my impression is that it is *also* huge.

Well, one cannot cover a big part of mathematics ant not being huge.

Looking
in the src/src/algebra directory there are many hundreds of
thousands of lines of code (over 300,000 distinct lines just of
dot-lsp files).  By the way, how do you guys read
some of this stuff?

Nobody should have need to read LISP. Mathematicians are used to "higher level". I would prefer if under src/algebra there would be only spad files with nothing but SPAD (or Aldor) and documentation in them. One can write relatively compact code in SPAD/Aldor and nothing like LISP should distract from that.

> I looked in INTALG.lsp and it is
pages of code that look like this:
                                             (PROGN
                                               (LETT #0# NIL
                                                |INTALG;palglogint|)
                                               (SEQ
                                                (LETT |q| NIL
                                                 |INTALG;palglogint|)
                                                (LETT #1#
                                                 (SPADCALL (QCDR |fc|)
                                                  |lf| (QREFELT $ 79))
                                                 |INTALG;palglogint|)
                                                G190
                                                (COND
                                                  ((OR (ATOM #1#)
                                                    (PROGN
                                                      (LETT |q|
                                                       (CAR #1#)
                                                       |INTALG;palglogint|)
                                                      NIL))
                                                   (GO G191)))
                                                (SEQ
                                                 (EXIT
                                                  (LETT #0#
                                                   (CONS
                                                    (SPADCALL
                                                     (SPADCALL
                                                      (QCAR |q|) 0
                                                      (QREFELT $ 82))
                                                     (QREFELT $ 83))
                                                    #0#)
                                                   |INTALG;palglogint|)))

This is from INTALG.lsp.  Surely this is some machine-generated
code that isn't meant to be human readable, so I'm
measuring the wrong thing!

Of course. And of course, nobody reads that. Or is there someone?

How does the fricas/axiom source code layout work?
Is it all written in pamphlets that lisp is generated from?
Anyway, I would love if somebody who knows what they
are talking about regarding axiom (not me!) would
explain what the human-written/readable code
parts of the axiom distro are and roughly how big each is,
in some sense.

William, since you are an invited speaker at ISSAC, why not staying a little longer and attending the Aldor & Axiom Workshop right after ISSAC? There might be some people around that could explain.

And who are some of the Axiom original
authors?  Some files have headers like:

++ Author: Grabmeier, Gschnitzer, Williamson
++ Date Created: 1987
++ Date Last Updated: July 1990

I wonder who those guys were...?

I agree, nothing is perfect. But as for this particular case, I know Dr. Johannes Grabmeier personally, and since he is working near Linz, he might be around at the Aldor & Axiom Workshop.

Ralf




reply via email to

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