3 ms·
In the CPython reference interpreter, that VM can be found at https://github.com/python/cpython/blob/main/Python/ceval.c https://github.com/python/cpython/blob
by jonjacky 1y ago
In the CPython reference interpreter, that VM can be found at
https://github.com/python/cpython/blob/main/Python/ceval.c https://github.com/python/cpython/blob/main/Python/ceval.c
It's 3619 lines. It's explained in this 515 line file:
https://github.com/python/cpython/blob/main/InternalDocs/ https://github.com/python/cpython/blob/main/InternalDocs/
For comparison, there is a pure Python bytecode interpreter, its VM is here:
https://github.com/nedbat/byterun/blob/master/byterun/pyvm2.py https://github.com/nedbat/byterun/blob/master/byterun/pyvm2....
It's 1043 lines.