Jupyter 4.0 Completed By Release of IPython 4.0
Written by Alex Armstrong   
Monday, 17 August 2015

IPython 4.0 has been released, but instead of this being the big package including a notebook and protocol that works with many languages it is just the Python-specific parts. The language-agnostic part of the project are now to be found in Jupyter.

The fact that iPython's main features work with many languages was easy to overlook due it its name. The new identity for the project, Jupyter was announced at SciPi 2014 last July.



As we reported when IPython 3.0 was released as the "last monolithic release":

Jupyter is not an acronym of Julia, Python and R  - but is inspired by these three open languages. It has also been chosen to reflect the long history that astronomy has had in the IPython community and to pay homage to Galileo whose notebooks were the first open science papers - a tradition that Jupyter Project intends to follow.  

iPython now refers to the parts of the Jupyter that actually deal with Python. So the main components of iPython 4.0.0 are:

  • an interactive Python shell
  • a Jupyter kernel to work with Python code in Jupyter notebooks and other interactive frontends

Features of the Python shell include: 

  • Comprehensive object introspection
  • Input history, persistent across sessions
  • Caching of output results during a session with automatically generated references
  • Extensible tab completion, with support by default for completion of python variables and keywords, filenames and function keywords
  • Extensible system of ‘magic’ commands for controlling the environment and performing many tasks related either to IPython or the operating system
  • A rich configuration system with easy switching between different setups (simpler than changing $PYTHONSTARTUP environment variables every time)
  • Session logging and reloading
  • Extensible syntax processing for special purpose situations
  • Access to the system shell with user-extensible alias system
  • Easily embeddable in other Python programs and GUIs
  • Integrated access to the pdb debugger and the Python profiler

Discussing the split that separates the Python-specific components and those part of the project, such as the notebook-related tools and the REPL protocol, that work with a range of languages and shells, the Jupyter blog states: 

If anyone has been confused by what Jupyter is, it's the exact same code that lived in IPython, developed by the same people, just in a new home under a new name.

One difference between the previous approach and the new one is that components:

won't be updated in coordination with each other as their APIs and release schedules will be allowed to advance at their own respective paces. 


A comment on Hacker news to the IPython 4.0 announcements says:

I think that if people will let the name iPython go we will see an explosion of usage by other communities and see new features added to the project.

Given the degree of enthusiasm for the formerly IPython and now Juypter Notebook this seems to be a welcome prospect.

More Information


Jupyter on GitHub

IPython on GitHub

Related Articles

IPython 3.0 Released 

IPython Creator Wins Free Software Award

Tools Doth A Language Make


To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, FacebookGoogle+ or Linkedin,  or sign up for our weekly newsletter.



GameMaker Free For Non-Commercial Use

GameMaker, for creating 2D platform games and now part of the Opera family, has made a change to its prices and terms and it is good news. GameMaker is now free for non-commercial purposes on all [ ... ]

OpenAI Announces Improved Models And APIs

OpenAI has announced new and improved models and APIs at its first Developer Day Conference. The company also announced it is reducing pricing for parts of its platform.

More News





or email your comment to: comments@i-programmer.info

Last Updated ( Monday, 17 August 2015 )