awesome-python-compilers

Retrospective of Python compilation efforts

Stars
62

Projects with code deliverables

Academic and theoretical research, and just no code available

Python Conferences and SIGs

  • 1998-11 7th International Python Conference
    • From Jon Riehl's notes:

    Last year (IPC7,) I thought I was going to surprise the Python community by presenting a prototype Python to C translator. Little did I know, I was only one of three people who announced such a product.

  • These apparently were:
    • "Converting Python Virtual Machine Code to C", John Aycock
    • "PyFront: Conversion of Python to C Extension Modules", Jon Riehl
    • (3rd - ???)
  • 2000-01 8th International Python Conference
    • From Jon Riehl's notes:

    This year (IPC8,) in the interest of keeping people up to date, there was a two hour session that hosted the developers of these prototypes. The only system left standing is now complete and under beta test. Bill Tutt and Greg Stein cowrote Python2C, which they have been continuing to work on at (http://www.mudlib.org/~rassilon/p2c/). The other player is John Aycock. John declared he would look into run time type instrumentation, which I think should end up forming some sort of a JIT for Python. He lives at: (http://gulf.uvic.ca/~aycock/)

  • 2000 Compiler-SIG
    • "This SIG grew out of a Developers' Day session at the 8th International Python
      Conference. Ka-Ping Yee took
      notes on the session."
  • 2016-07-11 Python Compilers Workshop
    at SciPy 2016 conference.

PEPs

  • PEP 267, 2001-05, Py2.2: Optimized Access to Module Namespaces

  • PEP 266, 2001-08, Py2.3: Optimizing Global Variable/Attribute Access

  • PEP 280, 2002-02, Py2.3: Optimizing access to globals

  • PEP 329, 2004-04, Py2.4: Treating Builtins as Constants in the Standard Library

  • PEP 510, 2016-01, Py3.6: Specialize functions with guards

  • PEP 511, 2016-01, Py3.6: API for code transformers

Static Analysis

  • https://github.com/sdiehl/subpy - Subpy is a library for defining subsets
    of the Python language and querying ASTs for language-level properties that
    are specified as sets of features.

Parsers


This list is compiled and maintained by Paul Sokolovsky, and released under Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0).