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.

jupyter

 

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. 

jupyter

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.org

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.

 

Banner


Apache Releases Tomcat 11
07/11/2024

Apache has announced the release of Tomcat 11, as well as marking the 25th anniversary of the first commit to the Apache Tomcat source code repository since becoming an ASF project.



Apache Fury Adds Optimized Serializers For Scala
31/10/2024

Apache Fury has been updated to add GraalVM native images and with optimized serializers for Scala collection. The update also reduces Scala collection serialization cost via the use of  encoding [ ... ]


More News

 

espbook

 

Comments




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

Last Updated ( Monday, 17 August 2015 )