Re: Difference between Axiom/Aldor and the rest of the world

"Ondrej Certik" <[email protected]>
Newsgroups gmane.comp.mathematics.axiom.user
Message-ID <[email protected]>
Hi Martin and Bill,

I understand your point. You realized you need a well defined
(general) language, and Aldor is it's implementation. This is much
better than Maple/Mathematica, I agree.

I am just addressing the technological point of view - you have a nice
language, tuned to the purpose of the CAS. This is certainly one way
to go.

There is certainly another way to go however, and that is the way I
took - don't reinvent some language, just take already working
language with a specification and a working (open source)
implementation. And a large userbase.

I think those are quite philosophical questions and it's not clear
which approach is better. So you just need to make some decision, and
I did one (with good arguments), you did another (with good
arguments).

Ondrej


On 27 Mar 2007 09:19:39 +0200, Martin Rubey <[email protected]> wrote:
> Dear Bill, Ondrej,
>
> I'd like to make two differences between the extension languages of Maple,
> Mathematica, MuPAD on one hand, and Aldor on the other hand very clear.
>
> Aldor has semantics which are very well explained (in great detail, see the
> "Aldor Compiler User Guide"), and are reduced to very few important
> concepts. Most importantly: Types are first class objects and every object has
> a type. This implies, for example, that the result of a function may be a type,
> as is the case with the "Fraction" constructor, or the "Polynomial" constructor
> in Axiom.
>
> The current implementation of Aldor is quite good at following those
> semantics. Really, with Aldor one should distinguish between the implementation
> and the language. It is quite clear what is a bug and what is a feature,
> although, of course, there are some borderline cases.
>
> In other words, the definition of Aldor does *not* go like "Aldor is the
> language implemented by the current Aldor compiler", but rather "Aldor is the
> language as described in the Aldor Compiler User Guide", and there is an
> implementation that tries hard to follow this guide.
>
> If you look at it this way, you can *really* say that SPAD is version 1 of the
> Aldor compiler, although this is not true historically. There are astonishingly
> few semantic differences and some syntactic differences, but mostly, SPAD
> implements simply a subset of what is described in the Aldor Compiler User
> Guide.
>
> I left out Maxima on purpose, since I believe that the "true" Maxima extension
> language is Ansi Common Lisp, although the current group of developers thinks
> otherwise.
>
> If you can come up with a semantic description of Mathematica's extension
> language, please tell Richard Fateman, since he tried but failed. :-)
>
> -------------------------------------------------------------------------------
>
> Concerning simplification, I'd like to add that this is really a
> non-concept. The real concept behind it is "normal form" or "canonical form",
> or at least, "test for zero".  And in fact, Axiom is very strong in those
> domains very you have one of those things.  And that's exactly why I'd like to
> have my hierarchy "rational - ... - differentially algebraic functions"
> implemented in Axiom, since they all allow test for zero, and an incredible
> amount of functions occurring in practice falls into one of these
> domains. Although, the example you gave for the limit computation does not, as
> far as I can see.
>
>
>
> All the best,
>
> Martin
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.