Re: MathML etc, was: fork in Lisp? was: Maxima servermode: stability of commands....



----- Original Message ----- 
From: "Robert Dodier" <robert.dodier at gmail.com>
To: "Richard Fateman" <fateman at cs.berkeley.edu>
Cc: "Michele Slocovich" <msloco at gmail.com>; "Gerd Kortemeyer" 
<korte at lite.msu.edu>; "maxima" <maxima at math.utexas.edu>
Sent: Wednesday, May 17, 2006 8:52 AM
Subject: MathML etc, was: fork in Lisp? was: Maxima servermode: stability of 
commands....


On 5/17/06, Richard Fateman <fateman at cs.berkeley.edu> wrote:

> In lisp this would be (sin x).  But that could convey much more
> information than MathML because of the context
>  in ANSI Common Lisp.   In Maxima, sin(x) implies
> a bunch of semantics, simplification rules, etc.  In MathML
> it conveys essentially nothing beyond "single-argument trig function"

Transmitting MathML doesn't introduce any content or context
problems not already present in s-expressions.
If I send ((%SIN) $X), there's no guarantee that the recipient
is going to interpret it in the same way as Maxima.

.............
  It is true that if you send ((%SIN) $X) to another program it
  could be interpreted as anything whatsoever, but  presumably
  it would be known in advance that it was from Maxima by
  prior agreement. When you send some MathML equivalent to
  sin(x),  you could have agreed that it was MathML, but you
  still wouldn't know --- radians or degrees?  So MathML is
  less informative. You still need another agreement.
  Indeed, a reasonable way of using MathML for an expression
  would be to include, in the comments, the Maxima equivalent.
  Then when transmitting or receiving MathML, toss out the
  whole communication except for the comment, and parse that.
......

XML in general is an ridiculously verbose half-baked
reimplementation of Lisp, true enough. So what?
When the goal is to get something working which can
talk to other programs, you just have to put aside your
personal feelings and get on with it.
.....
  The problem is, except for small integers,
  and elementary arithmetic on them, you can't really
  talk about much in content MathML reliably, so far as I can tell.
  It is trivially to translate from Lisp or Maxima into some
  MathML-like form, but it is in general losing information.

   RJF
........



Robert