MAXIMA internal representation && introduction



----- Original Message ----- 
From: "Richard Fateman" <fateman at cs>
To: "Siver Andrey" <siver@sirius.ihep.su>
Cc: "Richard Fateman" <fateman@cs.berkeley.edu>
Sent: Sunday, October 03, 2004 6:30 PM
Subject: Re: [Maxima] MAXIMA internal representation && introduction


> Your project has some easy parts and some hard parts.
> a. Translating objects from the CL representation used in MockMMA to
> internal Maxima objects is
>      1. Easy for some parts.  (Power ....) becomes ((mexpt) .....)
>      2. Hard for some parts.  Mathematica patterns do not exist in Maxima.

I hope that they can be translated into CL (as MockMMA does).

> I do not know what you mean by "external".  Outside Lisp?

External grammar (and lexer part). It's important thing when we talk about
standarts.

> and then use
> this as a standalone executable program that uses a Maxima server?

After translation procedure Math. -> CL the final program does not need any
grammar.

> If you are doing this because you think that Lisp cannot be made
> into a standalone executable, then you haven't solved the problem,
> have you?
>    In fact, you can find a lisp that produces standalone executables
> right now.  So you can start with that lisp, load in MOckMMa and Maxima,
> and dump it out into an executable.  I don't know how much further you
> want to go, but the idea that writing a parser in (say) C or C++ advances
> you somewhere, strikes me as unnecessary.

Writting a parser is an easy task comparing to developing a language or a
CAS. Working program in Math. will not always be working in CL as before
because of several reasons:
(1) Expert knowledge is needed. It's easy translate Integrate[...] ->
(INTEGRATE ...) but WHO will do integrate at the evaluation time? I suggest
MAXIMA do.
(2) Certain Math. behaviour is used. The result of Expand[(a+b)^2][[1]]
depends on the certain Expand algorithm.


Mathematica is not software for development for now (although it's used for
this). So there is a niche for the free version of the Math.


Andrey S. Siver