Subject: What should a GUI do; also , why case sensitive?
From: Stavros Macrakis
Date: Fri, 15 Oct 2004 17:10:22 -0400
> In a MVC design there is no translation between views at all. A view solely
> represents the model (e.g. 1-D maxima input/output in this case).
The linear string form of a mathematical expression is a terrible
"model"!! The model should surely be the tree-structured form which
logically includes a main operator/symbol, a list of attributes, and a
list of arguments, each of which is either another tree or a symbol.
Moreover, symbols themselves are not atomic, but also have attributes.
The Lisp representation of this involves list structure and Lisp
atoms (numbers and symbols); the Lisp read/print functions map this
form from and to a fully-parenthesized linear form, e.g. ((mplus simp)
$x 1); and the Maxima parser/string-display map from and to the
Maxima-grammar linear form x+1 (which by the way does not give full
information, e.g. about simplification status).
> The controller then executes the requested
> action (e.g. send subexpression to a maxima kernel) and alters the model
> (e.g. inserts subexpression as input line and maxima answer as output line).
Huh? It is bizarre for programs to be communicating using the
human-friendly i/o form.
> I don't know if there could be some try-catch construct to give the
> user access to the lisp level in a secure fashion, keeping a clean interface
> to the maxima kernel.
I don't understand what you're saying here.
-s