On 3/4/11 12:52 AM, Simon King wrote:
Hi Robert,
On 3 Mrz., 22:48, Robert Bradshaw<rober...@math.washington.edu>
wrote:
I think allowing letters like ç is just fine, what I'm opposed to is
letting our definition of valid symbol names vary from platform to
platform and local to local.
So, a useful definition would be to restrict to ASCII identifiers (no
unicode), but allow the use of ASCII letters (meaning: being a letter
in the alphabet of some natural language) that do not range from a-z
and A-Z?
If we're to allow non-ASCII identifiers,
I'd suggest we backport what Python 3.x does rather than coming up
with our own specification.
That makes sense. I don't know what Python 3.x does, though. It was
not clear to me from PEP 3131 whether this is part of Python 3.
Of course there's the issue of passing
them around to all the backends like maxima, and var("α") ==
var("alpha").
I doubt that we want to have var("α") == var("alpha"). Passing stuff
to backends is indeed something one has to think about.
But I wonder whether the whole discussion is futile before being based
on Python 3: Even if you define var("α"), you would not be able to use
it under the name α, simply because Python 2.x does not allow the
identifier α --- so, before Python 3, we are hardly in the position to
allow var("α") (it seems to me that the whole point of var(...) is to
insert stuff into the global name space).
sage: var("α")
α
sage: α
------------------------------------------------------------
File "<ipython console>", line 1
α
^
SyntaxError: invalid syntax
But you could do this:
sage: alpha=var("α")
sage: alpha
α
Jason
--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org