Unladen Swallow

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Lua error in package.lua at line 80: module 'strict' not found.

Lua error in package.lua at line 80: module 'strict' not found.

Unladen Swallow
Developer(s) Unladen Swallow Team[1]
Stable release 2009Q3 / October 20, 2009; 14 years ago (2009-10-20)
Written in C++
Platform Cross-platform
Type Python Programming Language Interpreter
License Apache License
Website Unladen Swallow at Google Code

Unladen Swallow was an optimization branch of CPython, intended to be fully compatible and significantly faster. It aimed to achieve its goals by supplementing CPython's custom virtual machine with a just-in-time compiler built using LLVM.

The project had stated a goal of a speed improvement by a factor of five over CPython;[2] this goal was not met.[3]

The project was sponsored by Google, and the project owners, Thomas Wouters, Jeffrey Yasskin, and Collin Winter, are themselves full-time Google employees,[4] however the majority of the contributors to the project are not Google employees. Unladen Swallow is hosted on Google Code.[5]

Like many things regarding the Python language, "Unladen Swallow" is a Monty Python reference, specifically to the gag about the airspeed velocity of unladen swallows in Monty Python and the Holy Grail.

Achievements

Although it fell short of all published goals, Unladen Swallow did produce some code which got added to the main Python implementation, such as improvements to the cPickle module.[6]

Project activity

In July 2010, some observers speculated on whether the project was dead or dying, since the 2009 Q4 milestone had not yet been released.[7] The traffic on Unladen mailing list had decreased from 500 messages in January 2010, to fewer than 10 in September 2010.[8] It has also been reported that Unladen lost Google's funding.[9] In November 2010, one of the primary developers announced that "Jeffrey and I have been pulled on to other projects of higher importance to Google".[10]

The 2009 Q4 development branch was created on January 26, 2010[11] but no advertising was made on the website. Furthermore, regarding the long-term plans and as the project missed the Python 2.7 release, a PEP[3] was accepted, which proposed a merge of Unladen Swallow into a special py3k-jit branch of Python's official repository. As of July 2010, this work was ongoing.[12] This merging would have taken some time, since Unladen Swallow was originally based on Python 2.6[13] with which Python 3 broke compatibility (see Python 3000 for further details). However, the PEP was subsequently withdrawn.

In early 2011 it became clear that the project was stopped.[14]

Milestones

  • 2009 Q1[15]
  • 2009 Q2[16]
  • 2009 Q3 and beyond: reduce memory usage, improve speed[17]

References

  1. https://code.google.com/p/unladen-swallow/people/list
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. 3.0 3.1 Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. http://bugs.python.org/issue9410
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found.