Subject: How install/run MockMMA??? needs Maxima to run?
From: Richard Fateman
Date: Wed, 11 Dec 2002 15:35:00 -0800
C Y wrote:
> --- seberino@spawar.navy.mil wrote:
>
>>Why isn't it simple to tweak MockMMA string and send it to Maxima
>>for processing?
>
>
> To the best of my understanding, it's not just a matter of mapping
> strings. You have to understand what the Mathematica command does,
> what the Maxima command you are mapping to does, and what the different
> behavior might be between those two functions in a large variety of
> cases. This is a root problem which will arise in any possible
> translation of Mathematica documents to Maxima - you have to consider
> what assumptions each command is making, not only about its own
> behavior but the behavior of other functions it deals with as well.
>
> Somebody correct me if I'm wrong, but that was my understanding.
This is correct as far as it goes. It doesn't address what is
the inefficiency of this approach to communicate. Let us say
you are sitting next to a friend. You want to go to
lunch and you are about to say "Hey, did you eat yet?". But then
you think: it is simple to type this into a string and email
it to my friend's laptop for processing. And just to make sure it is
simple,
you type it in French, because you think (but you are not positive)
that your colleague can read French.
In other words, you are proposing to do something in a complicated
and unreliable and slow way, compared to the really simple, reliable,
and fast way.
If your colleague were in France, it would be different!
>
>
>>If I'm not mistaken Symaxx is a Perl front end that talks
>>to Maxima with strings in both directions. Is that right?
>
>
> Yes, but Symaxx doesn't do any math itself or make any assumptions - it
> just displays what Maxima produces. Mathematica documents have built
> into them Mathematica ideas and concepts.
>
>
>>*Why* is it really hard to make some sort of Maxima shared object or
>>library that we can access from another object?
It is not hard at all, if the shared object is going to
be accessed from Lisp or even C. There are also CORBA, OLE, and Java beans
things in some lisps. But these are again like "why don't we all
speak another languages just for the fun of it".
>
>
> Partially because it is a lisp program, and talking between Lisp and
> the rest of the world is an effort. Actually, interlanguage
> communication is often a problem, not just with lisp - it's just that
> lisp being the minority language has to deal with other languages more
> frequently. It involves Foreign Function Interfaces typically, which
> take a lot of work. If you want an embedded math capability to use in
> another program I'd look at expanding Yacas, or perhaps GiNaC would
> suit your needs. You of course are welcome to try, but unfortunately
> string manipulation is just the tip of the iceberg.
I suspect that every computer algebra system that is not written in lisp
is an
example of Phil Greenspun's 10th rule of programming.
"Any suffciently complicated C or Fortran program contains an ad-hoc,
informally-specified bugridden
implementation of half of Common Lisp.
Philip Greenspun, 10th rule of programming"
>
> CY
>
> __________________________________________________
> Do you Yahoo!?
> Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
> http://mailplus.yahoo.com
> _______________________________________________
> Maxima mailing list
> Maxima@www.math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima