Contribute Media
A thank you to everyone who makes this possible: Read More

The Python That Wasn't


The Python That Wasn't

Presented by Larry Hastings

One reason for Python's success is its restraint in adding new language features. Only the most essential changes make it--and for every change that gets accepted, many more are rejected. Come learn about proposed changes to the Python language that failed--what, how, and why.


  • Quick overview of the process
    • First ten years: send GvR a patch
    • The modern approach: python-ideas, write a PEP, produce a reference implementation
  • Discuss the "prickly" Python community
    • This is a good thing! Only the best ideas survive the python-dev gauntlet!
    • They do this not because they're mean, but because they care so much.
    • We must have eternal vigilance to prevent unnecessary changes!
  • A survey of some changes that didn't make it
    • The switch/case statement (PEP 3103)
    • The "freeze protocol" (PEP 351)
    • The "dynamic attribute access" proposal from python-dev, 2007/02
    • Many more possibilities await in the rejected PEPs!
  • My message to the audience
    • Start with a post to python-ideas, please!
    • Don't be surprised if you get a negative reaction
    • Don't let your fear of a negative reaction stop you from trying, necessarily
    • Do your homework, and be your own worst critic


Improve this page