Case-sensitivity goals, policy and implementation



On Sun, 2004-10-10 at 13:32, C Y wrote:

> Agreed.  This also points out a larger issue (or maybe non-issue) I
> would appreciate clarification on - how well are the "translations" or
> "mappings" between the MAXIMA language and lisp defined/known?

I think the mappings are pretty unambiguous, even if they aren't all
described in one place.

> The
> issue I have immediately in mind (although post 5.9.2) is if (for
> example) we start to use the lisp package mechanism to do things like
> define a MAXIMA-USER environment and more cleanly divide up various
> parts of the system.  For starters, it would seem to make sense to have
> share packages use their own package environment, but in the case of a
> share package written in the MAXIMA language it is not clear how to
> declare a package which will a) do the expected thing at the lisp level
> and b) work at the Maxima level.  Would we have to introduce the
> concept of packages into the Maxima language and make it a mapping to
> the underlying Lisp packages?  Or is that how things work already at
> some level, and we just don't make much use of it?  I know there are
> one or two parts of maxima that make use of the package mechanism (IIRC
> slatec does?) and I was curious where such matters stood.

I agree that there are many possibilities in the area of separate
packages. I think the whole area requires a great deal of thought,
however. I would like to see a detailed proposal, including a
description of what problems are to be solved.

I, for one, think that separate user and system packages would help with
some ambiguities in what should happen when users redefine built in
functions and what should happen when kill(all) is called subsequently.
I would also like to see maxima-language packages in order to avoid
namespace clashes. I don't have detailed plan, however.

> For that matter, is there even a definition of the Maxima "language"
> beyond the program itself?  That might be a good thing to have someday
> if we don't have it anywhere.

Writing up a formal definition of the Maxima language would be an
excellent project. Could it even be a student project?

--Jim