Keynote: David Beazley

Author

  • David Beazley

Let’s Talk About (something diabolical)

  • Let’s talk about Pypy
  • Python implemented in Python
  • Quite a bit faster because of magic
  • Mandlebrot runs 34x faster
  • Which one can you adjust with a pocketknife?

Thinking about Tinkering

  • CPython has patches, extensions, ideas
  • Talking about GIL, etc, wouldn’t be possible without tinkering
  • iPython notebook is an examples of this
  • Is it just “evil geniuses”?
  • Can you tinker with PyPy?
  • Can I teach myself to tinker with it using just resources available, part-time?
  • Building PyPy is challenging
  • Takes hours, > 4gbs of memory, might break C compiler
  • RPython is a restricted subset of the language, but can run as valid Python
  • RPython is defined by the translation toolchain
  • If you love Python, you will hate RPython
  • Uses type inference
  • Lists need to be of a single type
  • Pypy uses the bytecode interpreter and an abstract runtime to compile to C code