Log in

записи соседство календарь хуэмай журнал ...Ранее ...Ранее Далее... Далее...
IPython notebook interface - Why is the rum gone?
That's not good enough
IPython notebook interface
An example of IPython notebook which is a replica of Mathematica notebook. A lot of impressive stuff is supported already (like a multi-language support in the cells, TeX output, or web interface which I haven't tried yet).

Curiously enough, they even copied In/Out labels from Mathematica.

The notebook I linked to above, for example, contains labels “In[8]” and “Out[8]” which roughly mean “8th line of code” and “the result of evaluation of 8th line of code”.

A bit later I will find out what they mean in the IPython notebook. For now it's sort of conundrum for me: in Mathematica, In[8] and Out[8] would be genuine Mathematica expressions, like any other Mathematica expression. The computed Out[8] is the content of the respective Cell. Once you realize some kind of lazy evaluation, you can operate with In[8] as if it was Mathematica expression contained in this Cell, too. (Without lazy evaluation, the code in In[8] would eveluate iself, so In[8] would in result return the evaluaed expression inside the “In[8]”-Cell.) Basically, In and Out are standard Mathematica expressions, much as Plus or String.

Actually, even cells are merely expressions — namely, Cell expressions.

If In and Out in IPython notebooks are indeed no more than labels, like (1), (2), … in math texts, it would be slightly surprising… but expectable, too. That would mean that .ipynb developers wanted a slick interface to work with languages and paradigms they are familiar with, and either had disliked the Mathematica language too much to go further, or did not feel that idea of interface being part of the paradigm is good enough, or maybe did not get the idea itself in the first place.