On Wed, Oct 21, 2009 at 4:15 PM, Nasser Abbasi <n...@12000.org> wrote: > > >> >> Suppose I write a program in Mathematica 7.0 that happens to use a >> variable Foo. Then Mathematica 8.0 comes out and Foo is a function >> name that Mathematica decided to use. Does that mean my program is >> now broken? >> >> William > > Hi; > > In theory, Yes. But one could, if they want to, Unprotect > Mathematica's Foo[] function first, and then they can define their own > function to be called Foo[]. > > That is why it is common knowledge in the Mathematica community that > no one would define a function name or symbol or variable that starts > with UpperCase. > > http://reference.wolfram.com/mathematica/tutorial/DefiningVariables.html > > "There is a convention that built-in Mathematica objects always have > names starting with uppercase (capital) letters. To avoid confusion, > you should always choose names for your own variables that start with > lowercase letters." > > Small price to pay for consistency and avoiding problems such this one > here. Would you not agree?
I think the upper or lower case naming conventions of functions and variables should depend on their *conceptual meaning* rather than whether they happen to be defined by Wolfram or me. It's a moot point though, since perhaps the most fundamental design constraint of Sage is that it uses the Python programming language. This means that we defer to Python on questions of language design whenever possible... (with the exception of a few minor conveniences afforded by the preparser). -- William --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URL: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---