Hi, I just taught a very intense two week workshop on the Riemann Hypothesis to 24 bright high school students, in which we used SAGE quite a lot each day for 2.5 hours (http://wstein.org/simuw/). I'm now very seriously considering some changes to SAGE as a result. The first is *removing* having predefined symbolic variable names. I.e., in SAGE right now the variables a..z and A..Z are prdefined at startup to be symbolic variables (except for I and e).
This has been discussed several times before on this list, and in the past I always argued for them. However, after having watched many actual people using SAGE during the last two weeks, I have changed my mind. The following sort of thing happened frequently day after day: I would make a predefined notebook cell or function or something like this: {{{ def R(x): ... }}} and students would forget to evaluate it. They would still try to do things like "plot(R, 0, 10)", and they would end up getting the identity function, which was very confusing. This *constantly* happened. An error message that R isn't defined would have been vastly superior. Another problem, is that doing, e..g, v = [y for y in w] would turn y into the last value in w. It would no longer be symbolic. So in writing code for the students, I could never rely on predefined symbolic variables being defined. So I propose that the only symbolic variables that are predefined are x (since it's so useful to have this predefined), I (=sqrt(-1)), and e (=2.7...). If users want a symbolic variable, they have to use the var command. One other thing that surprised me was (1) how little all the symbolic code in SAGE was actually useful for the workshop, (2) how annoying it was not having decimal literals be floats by default, and (3) how annoying it was having certain special functions, e.g., log, sin, cos, etc., return symbolic values by default instead of numerical values. I.e., Perhaps I'm starting to see why MATLAB is more popular than Maple/Mathematica for a lot of classes, and I'm starting to wonder if SAGE should by default tend toward being less symbolic, though it should still have all that functionality easily available. Don't worry -- I'm not gong to make any drastic changes without some significant feedback. So please, if you have thoughts on the above, let me know! -- William Stein Associate Professor of Mathematics University of Washington http://www.williamstein.org --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---