Case-sensitivity goals, policy and implementation



["Mike Thomas" <mike.thomas@brisbane.paradigmgeo.com>, Tue, 12 Oct 2004 09:39:09 +1000]:
> I agree completely.  Most mathematical models I see have mixed case
> variables and constants (but also bolded text, Greek characters etc).  A
> quick glance at the notation/symbol list in chemical engineering books such
> as Bird et al's classic "Transport Phenomena" indirectly support this
> observation.

So wouldn't it be a good idea to allow all of TeX in Maxima?
Presumably that does not mean dealing with symbols like $|M_1| but
rather with some $M1 that is to be printed as $M_1$ in output.

A frontend that wants to do something nice then can run all the
symbols through LaTeX, just like, e.g., MetaPost or gFont do, extract
the graphics, and present them to the user.  Such a frontend may also
allow a user to define a suitable symbol without caring for the maxima
name and provide some clickable something for accessing the symbol.

Those who prefer something more spartan can still work with $M1
without caring about anything, and should they want something "pretty"
they can still define the TeX rendering of their symbols.

ISTM that all this should be considered in the context of the
distinction between "pretty" and "readable" (as input) output on the
REPL: currently we have display2d to select between some
pseudographical something and integrate(...) on output.

BTW, the default Mathematica frontend has something called "input
palettes" that allow one to insert "pretty" symbols; and when you look
at the text representation, you find things like \[Lambda] etc.

> On the other hand, I like Cliff's suggestion which seems to imply that if
> Maxima were to be treated as a server behind a GUI front end which dealt
> with issues such as case and extended character sets by uniquely mapping
> input names, then there is probably no need to get too worried about the
> issue other than to choose one of case in/sensitivity.

I would rather have: that Maxima *may* (rather than *is to*) be
treated as a server behind...  For me it is very important that I can
run Maxima without being forced to use some GUI.

Regards,

Albert.