A CPython Eating Its Own Tail

by james@dontusethiscode.com
Level: Advanced
Oct 05, 2014 at 4 p.m.

This is an expert-level talk that dives into CPython and discusses various ways to embed Python interpreters. It starts with the "very high level" embedding & the "pure" embedding, shows a fairly novel "zero interpreter" embedding using Cython, a few attempts at a ctypes/cffi embedding, and builds to a finish with a source-filter embedding of a Python interpreter into itself. 

The purpose of this talk is to have some fun diving into CPython internals while looking practical approaches to embedding CPython interpreters into other (C/C++) processes. The final result, a Python 3 interpreter embedded into a Python 2 interpreter as an extension model, is novel but may be of fairly limited actual use. It is, however, pretty wild and a lot of fun!


Sponsors

  • SoftLayer
  • ZeOmega
  • uStudio
  • Rackspace
  • Home Depot
  • HBK
  • MapMyFitness
  • Continuum Analytics
  • Fidelity Investments
  • Clarify.io
  • Decisio
  • Docker
  • Coroware
  • Edepo
  • Flux7
  • No Starch Press
  • O'Reilly