<macrakis at alum.mit.edu> wrote:
>When assigning any of these to a named variable, they should be
>> assigned to the "value" cell of that variable.
>
>
>
>That is an implementation detail.
>
>
Yes that's true. But the current difference in semantics between lists
and arrays is partially caused by this "implementation detail".
The underlying CL system treats the value cell
of a symbol very differently from its other attributes (the property list
and the function cell). For example in a function call only the value
cell is rebound which creates all kinds of weird behaviour in maxima.
So I think life will be ***a lot*** easier if we decide to store
everything
in the value cell (including perhaps functions). Then we do no longer
have to deal with messy "local" declarations which are not supported
by the translator anyway.
Finally if we decide to make the maxima language more object oriented
(i.e. if the user has the ability to create other types of objects than
the built in ones) we definititely need a uniform semantics for storing
objects.
Michel
BTW I have not been following this thread but besides lists, vectors,
arrays, matrices, hashes and what not is seems we also need clear semantics
for indexed variables (for symbolic manipulation).