

Understanding Python Bytecode - neuroo
http://security.coverity.com/blog/2014/Nov/understanding-python-bytecode.html

======
marktangotango
Nice overview of Python bytecode. Reminded me of the 'No Frills Introduction
to Lua 5.1 VM Instructions'[1]. I have not seen a similar document for Python
yet, is there one?

[1]
[http://luaforge.net/docman/83/98/ANoFrillsIntroToLua51VMInst...](http://luaforge.net/docman/83/98/ANoFrillsIntroToLua51VMInstructions.pdf)

~~~
abecedarius
I don't think so; [https://docs.python.org/3/library/dis.html#python-
bytecode-i...](https://docs.python.org/3/library/dis.html#python-bytecode-
instructions) was the closest I found when I was writing a compiler for a
subset of Python, and that doc was a little sketchy and out of date. I ended
up consulting the CPython source a lot and reading some helpful blog series:

[http://docs.python.org/devguide/compiler.html](http://docs.python.org/devguide/compiler.html)
[http://akaptur.github.io/blog/categories/python-
internals/](http://akaptur.github.io/blog/categories/python-internals/)
[http://eli.thegreenplace.net/category/programming/python/pyt...](http://eli.thegreenplace.net/category/programming/python/python-
internals/) [http://tech.blog.aknin.name/category/my-projects/pythons-
inn...](http://tech.blog.aknin.name/category/my-projects/pythons-innards/)
[http://www.matusiak.eu/numerodix/blog/category/python-
intern...](http://www.matusiak.eu/numerodix/blog/category/python-internals/)

Also Python 2 comes with a 'compiler' module which reimplements the built-in
compiler in Python. (The real one is in C. The Python one was dropped from
Python 3.)

------
bnasty576
What is this used for? This went right over my head.

~~~
maxerickson
The byte code here is an implementation detail of an interpreter for the
Python programming language. Wikipedia seems to have decent coverage:

[http://en.wikipedia.org/wiki/Bytecode](http://en.wikipedia.org/wiki/Bytecode)

Someone at Coverity would likely be interested in understanding it to use in
analyzing source code. They use automatic analysis to find defects.

------
rev_null
"I came here to HAVE_ARGUMENT!"

"Oh! I'm sorry. This is abuse."

