aboutsummaryrefslogtreecommitdiff
path: root/py/bc0.h
AgeCommit message (Collapse)Author
2014-02-01py: Tidy up BINARY_OPs; negation done by special NOT bytecode.Damien George
IS_NOT and NOT_IN are now compiled to IS + NOT and IN + NOT, with a new special NOT bytecode.
2014-02-01py: Implement break/continue from an exception with finally.Damien George
Still todo: break/continue from within the finally block itself.
2014-02-01Implement default function arguments (for Python functions).Paul Sokolovsky
TODO: Decide if we really need separate bytecode for creating functions with default arguments - we would need same for closures, then there're keywords arguments too. Having all combinations is a small exponential explosion, likely we need just 2 cases - simplest (no defaults, no kw), and full - defaults & kw.
2014-01-11Merge branch 'master' of github.com:dpgeorge/micropythonDamien George
2014-01-11py: Make arg to MP_BC_RAISE_VARARGS a byte.Damien George
2014-01-11unified the bopsJohn R. Lenton
2014-01-04Add ellipsis object.Damien George
2013-12-30py: make closures work.Damien George
2013-12-21Change object representation from 1 big union to individual structs.Damien
A big change. Micro Python objects are allocated as individual structs with the first element being a pointer to the type information (which is itself an object). This scheme follows CPython. Much more flexible, not necessarily slower, uses same heap memory, and can allocate objects statically. Also change name prefix, from py_ to mp_ (mp for Micro Python).