axiom-developer
[Top][All Lists]
Advanced

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

Re: [Axiom-developer] (Possible) reasons Axiom didn't appeal to SoC code


From: Martin Rubey
Subject: Re: [Axiom-developer] (Possible) reasons Axiom didn't appeal to SoC coders...
Date: 10 Apr 2007 21:03:26 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4

"Bill Page" <address@hidden> writes:

> Unfortunately we did not receive any eligible applications from students
> regarding Axiom. :-( I think we should try to analyze why that
> happened. Although I do think that Lisp is an important programming language,
> I fear that Axiom's association with Lisp is of very little benefit to
> Axiom. It seems that very of the already very few student Lisp programmers
> are really interested in Axiom... Does anyone have any other ideas about why
> we did not receive any applications?

I must say that this question makes me a little angry.  There is at least one
*very* simple reason why we will not participate in SOC:

I prepared a wiki page, in the contents of which I put roughly five hours,
trying to prepare something which would be focussed and possible to
tackle. (not all of this effort is visible on the page, I did do some more
thinking) In fact, I also prepared a rather detailed application for google.

I then asked for mentors to step forward.  I got *very* little response, and in
the end, *not a single person* was ready to send me his/her google account
adress as required by google.

In other words, I wasted a lot of energy.

It is quite obvious to me why nobody from the lisp community wanted to write
something for axiom: the projects I proposed had nothing at all to do with
lisp... Furthermore, the last lisp project was, in my opinion, a complete
failure.

I guess that it would have been possible to prepare some lispy project, for
example cleaning up the boot compiler.  This might have been interesting, but
I'm unable to prepare such a project for several reasons:

* I do not know enough about the boot/lisp internals of axiom

* I doubt that it would be very interesting for somebody not enthusiastic about
  the axiom project

* I'm not sure whether it would be useful.

I believe it is not true that there are too few interested people in CAS.  At
least Ondrej stated that he had more students applications than he could
mentor, and I'm convinced that this is only partially due to Pythons
popularity.

-------------------------------------------------------------------------------

Finally, I'd like to ask you for help.

It seems that I have lost (more or less) Neil Sloane. I hope I'll be able to
win him back, it is very important for me personally.  I am currently extremely
close to having to stop maths (and thereby also axiom), and I badly need some
"success" stories.

I am also advertising axiom at the maths and physics departments of Vienna
university -- that's one of the bigger players in the game, by the way.

I am not sure what I can ask for, I only know what would be most helpful
(regarding non-mathematical projects):

* HyperDoc or a HyperDoc replacement on Windows

* a free Aldor, or, since this is quite unlikely to happen, SPAD becoming more
  Aldor-like. Furthermore, but maybe also a first step, Axiom should understand
  Aldor's "extend".  Concerning SPAD becoming more Aldor-like, the most
  important thing would be to allow signatures as used in the Species project:

SPECIES ==> (L: LabelType) -> CombinatorialSpecies L;

Plus(
    F: SPECIES,
    G: SPECIES
)(L: LabelType): CombinatorialSpecies(L) == add {
        Rep == Union(left: F L, right: G L);
        import from Rep;
        <<implementation: Plus>>
}


  (To make this easies to understand, here is a usage example:

Partition(L: LabelType): with {
        <<exports: Partition>>
} == add {
        <<representation: Partition>>
        import from Rep;
        <<implementation: Partition: auxiliary functions>>
        <<implementation: Partition>>
}

  is used (in Axiom roughly) like

generatingSeries()$Partition(Integer)

  which would give the generating function for the Bell numbers, or

structures(set [1,2,3])$Partition(Integer)

  which would return all set partitions of [1,2,3]: [[1,2,3]], [[1,2],[3]],
  [[1,3],[2]], [[2,3],[1]], [[1],[2],[3]]


P2 ==> Plus(Partition, Partition)(Integer)

generatingSeries()$P2

  would return twice the generating series of the set partitions.



  Another remark: I'm meanwhile more convinced than ever that SPAD is simply a
  subset of Aldor.  A while ago, somebody said that "==" would have different
  semantics, since "==" would mean "delayed evaluation" in Axiom, but that's
  not quite true: it's meaning within SPAD is compatible with Aldor's meaning,
  namely "constant assingment": functions in Aldor and SPAD are constants, and
  the usage

  f(1)==1; f(2)==1; f(n)==f(n-1)+f(n-2)

  is only possible in the interpreter -- and that's a wise decision, too, as
  Christian Aistleitner confirmed.



Martin





reply via email to

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