||It has been suggested that this article be merged into CPython. (Discuss) Proposed since July 2013.|
|Developer(s)||Unladen Swallow Team|
|Stable release||2009Q3 / October 20, 2009|
|Type||Python Programming Language Interpreter|
|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 was sponsored by Google, and the project owners, Thomas Wouters, Jeffrey Yasskin, and Collin Winter, are full-time Google employees, however most project contributors are not Google employees. Unladen Swallow is hosted on Google Code.
Like many things regarding the Python language, the name Unladen Swallow is a Monty Python reference, specifically to the joke about the airspeed of unladen swallows in Monty Python and the Holy Grail.
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.
In July 2010, some observers speculated on whether the project was dead or dying, since the 2009 Q4 milestone had not yet been released. The traffic on Unladen's mailing list had decreased from 500 messages in January 2010, to fewer than 10 in September 2010. It has also been reported that Unladen lost Google's funding. In November 2010, one of the main developers announced that "Jeffrey and I have been pulled on to other projects of higher importance to Google".
The 2009 Q4 development branch was created on January 26, 2010, but no advertising was made on the website. Further, regarding the long-term plans, and as the project missed the Python 2.7 release, a Python Enhancement Proposal (PEP) 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. This merging would have taken some time, since Unladen Swallow was originally based on Python 2.6 with which Python 3 broke compatibility (see Python 3000 for more details). However, the PEP was subsequently withdrawn.
In early 2011, it became clear that the project was stopped.
- Paul, Ryan (2009-03-26). "Ars Technica report on Unladen Swallow goals". Arstechnica.com. Retrieved 2011-08-19.
- Winter, Collin; Yasskin, Jeffrey; Kleckner, Reid (2010-03-17). "PEP 3146 - Merging Unladen Swallow into CPython". Python.org.
- "People working on Unladen Swallow". Retrieved 2009-09-29.
- "Unladen Swallow project page". Code.google.com. Retrieved 2011-08-19.
- "Message on comp.lang.python". Groups.google.com. Retrieved 2011-08-19.
- "Unladen Swallow | Google Groups". Groups.google.com. Retrieved 2011-08-19.
- "reddit post by an Unladen committer". Reddit.com. 2010-06-24. Retrieved 2011-08-19.
- Winter, Collin (November 8, 2010). "Current status of Unladen-Swallow". Google.
- "2009 Q4 release branch creation". Code.google.com. 2010-01-26. Retrieved 2011-08-19.
- "Developers focus on merge into py3k-jit". Groups.google.com. 2010-07-13. Retrieved 2011-08-19.
- "Unladen Swallow baseline". Python.org. Retrieved 2011-08-19.
- Kleckner, Reid (26 March 2011). "Unladen Swallow Retrospective". QINSB is not a Software Blog (qinsb.blogspot.com).
- "Unladen Swallow 2009Q1". unladen-swallow, A faster implementation of Python. Retrieved 19 October 2012.
- "Unladen Swallow 2009Q2". unladen-swallow, A faster implementation of Python. Retrieved 19 October 2012.
- "Unladen Swallow 2009Q3". unladen-swallow, A faster implementation of Python. Retrieved 19 October 2012.