Subject: Case sensitivity, line labels and the future
From: C Y
Date: Tue, 15 Apr 2003 05:33:27 -0700 (PDT)
--- Martin RUBEY <rubey@labri.fr> wrote:
> Axiom is on the way to become THE powerful free CAS, but they are not
> there yet (they say that 80% of the algebra builds meenwhile, which
> is a lot). As far as I can judge, it is *very* well done and will be
> *very* powerful. I'm certain, that there will be *lots* of things
that
> axiom will be able to do and we can only dream of. Note that they
also
> have efforts to create a 'user friendly' interface.
I agree it looks powerful, but aside from the whole proof based
approach they seem to want to take, are they really that much more
capable than us? Also, there's no code publicly available yet, as far
as I know.
> (1b) improve the math. I think there are some 200 math bugs out
> there.
I agree, this is the crucial point, but since only a few of us are
skilled enough to address such bugs this is a fun argument for the rest
of us ;-).
> (2) Case sensitivity and line labels: I think that user's choice is a
> good thing, and in my opinion there is a very simple way to achieve
> it:
>
> All contributed stuff must be case insensitive and must not use line
> labels in order to be accepted. In fact this is very easy to check:
> when receiving the source, demand that it's all in lower case...
Agreed, with the possible exception of share packages intended for
classroom work.
> The idea of CY to convert E into capital_e internally is bad, I
> think, because there might be a variable around which is (shit
> happens) called capital_e.
Personally, I think we should check for such things and eliminate them
- i.e. treat such expressions the same as capital letters in the code.
Make capital_* part of the Great Source Downcasing.
A quick grep through the source code shows no instances of capital_ and
only a few of capital (a couple are in my physconst.mac file in share.)
greping for c_ with a space in front of it only returns a couple of
results. (grep -r \ c\_ *)
I think Maxima warns a user when some things are redefined - would
there be any way to use that mechanism to provide some kind of warning
for this sort of thing, as a backup?
However, given a lot of people a lot smarter than me don't seem to
think my idea is workable or even desirable, I'm willing to concede the
argument. (I'd be curious what Jim thinks about it, though.)
> But there is no danger of confusion, if all contributed stuff is case
> insensitive.
Exactly. Once we've eliminated capital_* expressions from the source
code, we can establish the coding policy that anyone who uses such an
expression should a) be writing in share packages and b) should do so
knowing it will be interpereted as upper case. But any code submitted
will need to use capital_* rather than capital letters. People can
code in any style they like, then run the code through a script to
convert it to proper Maxima format and check it over before submitting.
Hopefully that would encourage exactly the system someone mentioned
earlier - fully case sensitive Maxima with just a minimal use of
capital letters. That way when they are used they stand out, which
should be a help for the kind of applications that would want caps.
Anyway. Just thought I'd throw the idea out.
CY
__________________________________________________
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo
http://search.yahoo.com