Abstract
We present a small-step operational semantics for the Python programming language. We present both a core language for Python, suitable for tools and proofs, and a translation process for converting Python source to this core. We have tested the composition of translation and evaluation of the core for conformance with the primary Python implementation, thereby giving confidence in the fidelity of the semantics. We briefly report on the engineering of these components. Finally, we examine subtle aspects of the language, identifying scope as a pervasive concern that even impacts features that might be considered orthogonal.
- Appcelerator. Pydev, 2013.Google Scholar
- Matthias Felleisen, Robert Bruce Findler, and Matthew Flatt. Semantics Engineering with PLT Redex. MIT Press, 2009. Google Scholar
Digital Library
- Matthias Felleisen and Robert Hieb. The revised report on the syntactic theories of sequential control and state. Theoretical Computer Science, 103(2), 1992. Google Scholar
Digital Library
- Phil Frost. Pyflakes 0.6.1, 2013.Google Scholar
- Arjun Guha, Claudiu Saftoiu, and Shriram Krishnamurthi. The Essence of JavaScript. In European Conference on Object-Oriented Programming, 2010. Google Scholar
Digital Library
- JetBrains. Pycharm, 2013.Google Scholar
- James McCauley. About pox, 2013.Google Scholar
- Neal Norwitz. Pychecker 0.8.12, 2013.Google Scholar
- Joe Gibbs Politz, Matthew J. Carroll, Benjamin S. Lerner, Justin Pombrio, and Shriram Krishnamurthi. A Tested Semantics for Getters, Setters, and Eval in JavaScript. In Dynamic Languages Symposium, 2012. Google Scholar
Digital Library
- Johann C. Rocholl. Pep 8 1.4.5, 2013.Google Scholar
- Securities and Exchange Commission. Release nos. 33--9117; 34--61858; file no. s7-08--10, 2010. RIN 3235-AK37.Google Scholar
- Gideon Joachim Smeding. An executable operational semantics for python. Master's thesis, Universiteit Utrecht, January 2009.Google Scholar
- Sylvain Thenault. Pylint 0.27.0, 2013.Google Scholar
- Wingware. Wingware python ide, 2013.Google Scholar
- Ka-Ping Yee. Access to names in outer spaces, October 2009.Google Scholar
Index Terms
Python: the full monty
Recommendations
Python: the full monty
OOPSLA '13: Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applicationsWe present a small-step operational semantics for the Python programming language. We present both a core language for Python, suitable for tools and proofs, and a translation process for converting Python source to this core. We have tested the ...







Comments