On 6/27/07, Nick Alexander <[EMAIL PROTECTED]> wrote: > >> No, there's an eval. In the context of SAGE, the eval is more useful > >> than the (defensible, correct) IPython behaviour. > > > > FYI, I'm definitely *not* opposed to having an eval like Fernando is. > > Thanks for your patch!! > > Hi William, > > What will happen to it? Is it in refereeing, will you apply it > yourself, or what?
I'm going to read it myself, and apply it. It's related to code I know well, and I've wanted to do something similar myself for a long time. > PS. The new SAGE notebook is the coolest thing since sliced bread. How sluggish does it feel on your laptop? Does it feel usable? I haven't had the chance to test it on a G4. > I am going to work on updating load and attach to allow for reloading > modules in place, which should be useful for developers who use the > notebook. Excellent, thanks! Definitely. Note also that you can create and/or upload text files to the notebook, have them get linked to several different worksheets (via UNIX file links), edit them in the notebook, and -- even load them right now. Tutorial: (1) Create a new worksheet (2) Click "Data..." and select "Upload or create file" (3) In the third box type "foo.sage", then click "Upload file" (I know -- that's confusing). (4) In the box that appears input this: def f(x,y): return x*y (5) Click "Save Changes" (6) In the SAGE worksheet, type sage: load foo.sage sage: f(3,11) 33 > PPS. It occurs that the notebook has very little do with SAGE, and a > lot to do with Python and IPython. Would it be possible/desirable to > have it separate, for other projects to reuse? Because I think it is > just way too cool to keep for SAGE alone. The Notebook has a huge amount to do with the pexpect interfaces. However, I have been very careful to make sure that notebook does not depend at all on any of the mathematical SAGE library. In fact, *probably* if you type: sage -python >>> from sage.server.notebook.all import notebook only the following components of the SAGE library are imported: * all the notebook stuff * the sage/misc directory * some of the pexpect stuff -- and no math code. This means that one should be able to distribute the SAGE notebook + some of the pexpect interface stuff just by creating a different setup.py file and doing python setup-notebook.py sdist I haven't done this yet only because I hope somebody else will do it for me, I haven't had time, and it's not necessary for me to do in order to accomplish my personal goals. I would, however, be very supportive of a project to distribute "the notebook + interfaces" this way. In fact, it might make sense to split the math and non-math parts of the SAGE library at some point. The math part will depend on the non-math part, but the non-math part would stand alone. This non-math part would also be the right thing to consider getting made into a standard Debian (Fink, etc.) package. -- 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/ -~----------~----~----~----~------~----~------~--~---