Subject: Case-sensitivity goals, policy and implementation
From: C Y
Date: Sun, 10 Oct 2004 11:32:06 -0700 (PDT)
--- "Viktor T. Toth" <vttoth@vttoth.com> wrote:
>> I would like to propose a modified policy. Maxima would be totally
>> case sensitive, *however* all built-in functions would be
>> addressable as either all lower case or all upper case. E.g., the
>> cosine function could be written as "cos" or "COS". "Cos", "coS",
>> "CoS", etc. would all be distinct functions.
>
> Bravo! For what it's worth, I wholeheartedly support this idea, Jim.
> This is exactly the behavior that I prefer.
Agreed.
> I only have one suggestion: It should be possible for end users to
> define symbols that behave the "built-in" way, even when they define
> symbols in the MAXIMA language, not in LISP.
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? 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.
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.
CY
__________________________________
Do you Yahoo!?
Y! Messenger - Communicate in real time. Download now.
http://messenger.yahoo.com