PEP: 401
Title: BDFL Retirement
Version: $Revision$
Last-Modified: $Date: 2009-04-01 00:00:00 -0400 (Wed, 1 Apr 2009)$
Author: Barry Warsaw, Brett Cannon
Status: April Fool!
Type: Process
Content-Type: text/x-rst
Created: 01-Apr-2009
Post-History: 01-Apr-2009


Abstract
========

The BDFL, having shepherded Python development for 20 years,
officially announces his retirement, effective immediately.  Following
a unanimous vote, his replacement is named.


Rationale
=========

Guido wrote the original implementation of Python in 1989, and after
nearly 20 years of leading the community, has decided to step aside as
its Benevolent Dictator For Life.  His official title is now
Benevolent Dictator Emeritus Vacationing Indefinitely from the
Language (BDEVIL).  Guido leaves Python in the good hands of its new
leader and its vibrant community, in order to train for his lifelong
dream of climbing Mount Everest.

After unanimous vote of the Python Steering Union (not to be confused
with the Python Secret Underground, which emphatically does not exist)
at the 2009 Python Conference (PyCon_ 2009), Guido's successor has been
chosen: Barry Warsaw, or as he is affectionately known, Uncle Barry.
Uncle Barry's official title is Friendly Language Uncle For Life (FLUFL).

.. _PyCon: http://us.pycon.org/


Official Acts of the FLUFL
==========================

FLUFL Uncle Barry enacts the following decisions, in order to
demonstrate his intention to lead the community in the same
responsible and open manner as his predecessor, whose name escapes
him:

* Recognized that the selection of ``Hg`` as the DVCS of choice was
  clear proof of the onset of the BDEVIL's insanity, and reverting
  this decision to switch to ``Bzr`` instead, the only true choice.

* Recognized that the ``!=`` inequality operator in Python 3.0 was a
  horrible, finger pain inducing mistake, the FLUFL reinstates the
  ``<>`` diamond operator as the sole spelling.  This change is
  important enough to be implemented for, and released in Python
  3.1. To help transition to this feature, a new future statement,
  ``from __future__ import barry_as_FLUFL`` has been added.

* Recognized that the ``print`` function in Python 3.0 was a horrible,
  pain-inducing mistake, the FLUFL reinstates the ``print``
  statement.  This change is important enough to be implemented for,
  and released in Python 3.0.2.

* Recognized that the disappointing adoption curve of Python 3.0
  signals its abject failure, all work on Python 3.1 and subsequent
  Python 3.x versions is hereby terminated.  All features in Python
  3.0 shall be back ported to Python 2.7 which will be the official
  and sole next release.  The Python 3.0 string and bytes types will
  be back ported to Python 2.6.2 for the convenience of developers.

* Recognized that C is a 20th-century language with almost universal
  rejection by programmers under the age of 30, the CPython
  implementation will terminate with the release of Python 2.6.2 and
  3.0.2.  Thereafter, the reference implementation of Python will
  target the Parrot [1]_ virtual machine.  Alternative implementations
  of Python (e.g. Jython [2]_, IronPython [3]_, and PyPy [4]_) are
  officially discouraged but tolerated.

* Recognized that the Python Software Foundation [5]_ having fulfilled
  its mission admirably, is hereby disbanded.  The Python Steering
  Union [6]_ (not to be confused with the Python Secret Underground,
  which emphatically does not exist), is now the sole steward for all
  of Python's intellectual property.  All PSF funds are hereby
  transferred to the PSU (not that PSU, the other PSU).


References
==========

.. [1] http://www.parrot.org

.. [2] http://www.jython.org

.. [3] http://www.ironpython.com

.. [4] http://www.codespeak.net/pypy

.. [5] http://www.python.org/psf

.. [6] http://www.pythonlabs.com


Copyright
=========

This document is the property of the Python Steering Union (not to be
confused with the Python Secret Underground, which emphatically does
not exist).  We suppose it's okay for you to read this, but don't even
think about quoting, copying, modifying, or distributing it.


..
  Local Variables:
  mode: indented-text
  indent-tabs-mode: nil
  sentence-end-double-space: t
  fill-column: 70
  coding: utf-8
  End:
