[SciPy-user] ANN: IPython 0.2.8

Fernando Perez fperez at pizero.colorado.edu
Tue Mar 19 02:23:55 CST 2002

Hi folks,

I've put up a new release of IPython which incorporates many recent fixes and
improvements which may be of interest to the scipy crowd. Since there's been
interest in using IPython as part of scipy as a user front-end, I'd appreciate
comments/suggestions from you. There have already been many useful ones, which
I've tried to respond to and incorporate whenever feasible.

For those who aren't familiar with what IPython is, some info follows.

* WHERE: http://www-hep.colorado.edu/~fperez/ipython

* NEW since last public release (ChangeLog included with full details):

- Full Emacs integration. Now IPython can be used both in Emacs shell/term
buffers and also as your Python interpreter (with C-c !). Instructions on the
necessary code for your .emacs file provided.

- Interface to Gnuplot. This can be used as a template for interfacing with
any other program which one can communicate with (via pipes, sockets,
whatever). If anyone cares to do it, it might be nice to implement a MathLink
channel for Mathematica, for example.

- Many improvements to the embedding facilities. It's now possible to have
nested copies of IPython running (such as debugging code with embedded IPython
inside IPython itself). Global and local locks for the embedded instances
provided to control them better, and the user prompts can be modified for each
embedded instance.

- Improved macro system for automatically re-executing many lines of previous

- Better control for running other programs inside IPython via @run.

- New -upgrade command line option for old users to update their .ipython/
directory automatically.

- Many small bugfixes, documentation very updated.

* WHAT is IPython? (this is just for context. See the webpage for full
details). IPython tries to:

1. Provide an interactive interpreter superior to Python's default. IPython
has many features for object introspection, shell access, and its own special
command system for adding functionality when working interactively.

2. Serve as an embeddable, ready to use interpreter for your own programs.
IPython can be started with a single call from inside another program,
providing access to the current namespace. This can be very useful both for
debugging purposes and for situations where a blend of batch-processing and
interactive exploration are needed.

3. Offer a flexible framework which can be used as the base environment for
other systems with Python as the underlying language. Specifically scientific
environments like Mathematica, IDL and Matlab inspired its design, but similar
ideas can be useful in many fields.

* PORTABILITY: Linux (and other unices, including Mac OSX), Windows XP. Should
run fine on all WinNT/2K, and probably also on Win9x (I can't test this).

* PYTHON VERSION: requires 2.1 or newer.

* LICENSE: LGPL (a few files from third parties carry MIT licenses). Note that
for the next major release (which will include an internal rewrite), I've
already discussed with Eric a licensing change to bring it in line with SciPy.
So please consider this to be a non-issue.


Fernando Perez.

More information about the SciPy-user mailing list