Inside the python Virtual Machine provides a guided tour under the covers of the Python interpreter for the curious pythonista. It attempts to show the user what happens from the moment the user executes a piece of Python code to the point when the interpreter returns the result of executing the piece of code.
This book will provide the readers with an understanding of the various processes that go into compiling and executing a python program removing most of the mystery surrounding how the python interpreter executes source code. The books starts out with a description of the compilation phase with emphasis on the less generic parts of the compilation phase. It then proceeds to discuss python objects and their implementation in CPython. This is followed by a discussion of various objects types that are central to the interpreter such as frame objects and code objects. The process of evaluating code objects by the interpreter loop is also discussed as well as how to extend the Python programming language with your own constructs.
Read more Read less
Feedback
Discuss this Book Email the Author(s)Share this book
Table of Contents Introduction The View From 30,000ft Compiling Python Source Code From Source To Parse Tree Python tokens From Parse Tree To Abstract Syntax Tree Building The Symbol Table From AST To Code Objects Python Objects PyObject The Type Object Case study of a type object : The tuple type Minting type instances Objects and their attributes Code Objects Code Objects. Frames Objects Initializing Frames The Python State: Interpreter and Threads The Interpreter state The Thread state Intermezzo: The abstract.c Module The Interpreter loop - ceval.c The Setup I - Putting names in place The Setup II : All the macros The Execution loop Interesting opcodes The Block Stack A Short Note on Exception Handling Phrase I: From Class code to bytecode Phrase II: What are Generators made of ? NotesRead More Read Less
About the Author Obi Ike-NwosuObi has more than five years of experience using Python. His interests include but are not limited to algorithms, mathematics, computer security, writing, developmental economics, business and problem solving in general.
Read more Read less