1. Miki Tebeka
  2. pycon2013

Source

pycon2013 / bytecode.txt

- dis module
- 101 opcodes in 3.3 VM
- opcode 1 byte, argument is 2 bytes (optional)
- The VM:
    - ip
    - stack
    - fast local arrays
- 6 different variables
    - global
    - fast locals
    - (slow) locals
    - consts
    - object attributes
    - cell
- Free and cell variables
    - cell: local with is referred from nested function
    - free: the reference in the nested func
- dis.HAVE_ARGUMENT, all opcodes under have no arguments
- stack size per function is pre calculated
- maynard: assembler and disassembler for python bytecode
- Python doesn't check bytecode - will crash easily