MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: 2.9.2 How Input and Output Work

  • To: mathgroup at
  • Subject: [mg61875] Re: 2.9.2 How Input and Output Work
  • From: "Steven T. Hatton" <hattons at>
  • Date: Thu, 3 Nov 2005 04:58:44 -0500 (EST)
  • References: <> <dk9vr5$6su$>
  • Sender: owner-wri-mathgroup at

bsyehuda at wrote:

> The parsing is done by the Kernel, so "immediately" is when you evaluate
> the expression.
> In addition, the "Cell[BoxData[...." that you may see in the front end is
> not the expression that is passed to the kernel. This expression is
> converted to another format that is passed to the kernel which in turn
> pars it, process it, and send it back to the front end (and there it is
> converted again to "Cell[... " expressions.

I guess I'm confused about that.  What is that other form?  For me to
convert one form to another using Mathematica, I typically need to invoke
the kernel.  Are you suggesting that the FrontEnd converts to internal form
before sending the expression to the Kernel?

> This should be transparent to the user, so I wonder, why is this so
> important to you?
> yehuda

There are many reasons I'm interested in how this all works.  One of the
more bothersome aspects of Mathematica for me is the fact that it often
changes what I input into what it thinks I wanted.  I understand that it is
trying to /help/ me, and often it does.  OTOH, I prefer XEmacs over, say,
Mozilla composer for authoring xhtml (I don't do html).  I like to see
exactly what I am doing with the code.  I rarely use GUI builders, or other
graphical code generation tools.  When I do, without exception I look at
the source code, be it Java, C++, XUL, or whatever.

The Mathematica Book says: "Mathematica uses various syntactic rules to
interpret input that you give, and to convert strings and boxes into
expressions. The version of these rules that is used for StandardForm and
InputForm in effect defines the basic Mathematica language. The rules used
for other forms, such as TraditionalForm, follow the same overall
principles, but differ in many details."  That to me is an interesting
statement in so much as it seems to suggest that FullForm is not "the basic
Mathematica language". I would have said FullForm is the basic language of
Mathematica had I been asked prior to reading that paragraph.  

I'm currently investigating technologies related to MathML, OpenMath, and
OMDoc.  There are often multiple representations of the same expression in
the same document when working with these encodings.  Part of my objective
is to figure out what it would take to make the Mathematica FrontEnd an XML
document editor.  There are several different aspects of that challenge. 
One of which is determining what is presented to the user, and what can be
presented to the user.  I would like to be able to see the FullForm of an
expression in a popup window, or in a separate widget within the current

"Philosophy is written in this grand book, The Universe. ... But the book
cannot be understood unless one first learns to comprehend the language...
in which it is written. It is written in the language of mathematics, ...;
without which wanders about in a dark labyrinth."   The Lion of Gaul

  • Prev by Date: ExportString[exp, "MathML"]
  • Next by Date: Re: aggregation of related elements in a list
  • Previous by thread: Re: 2.9.2 How Input and Output Work
  • Next by thread: Re: Re: 2.9.2 How Input and Output Work