Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Implement tuple comparison. | Paul Sokolovsky | 2014-02-08 |
| | |||
* | Refactor list comparison code to mp_seq_cmp_objs(). | Paul Sokolovsky | 2014-02-08 |
| | |||
* | unix microsocket: Add dummy makefile() method. | Paul Sokolovsky | 2014-02-08 |
| | | | | | | Unlike CPython socket, microsocket object already implements stream protocol (read/write methods), so makefile() just returns object itself. TODO: this doesn't take care of arguments CPython's makefile() may accept. | ||
* | py: Pass keyword args to native functions by using the stack. | Damien George | 2014-02-08 |
| | | | | | | Passing keyword arguments to a native function now no longer requires heap memory. The kw_args map is created on the stack using the args array as the table. | ||
* | py: Allow mp_map_t to be initialised by a fixed-size, const table. | Damien George | 2014-02-08 |
| | | | | This allows keyword maps to be created directly from stack data. | ||
* | Make mp_obj_str_get_data return char* instead of byte*. | Damien George | 2014-02-08 |
| | | | | | Can't decide which is better for string type, char or byte pointer. Changing to char removes a few casts. Really need to do proper unicode. | ||
* | py: Put builtins into ROM table. | Damien George | 2014-02-06 |
| | | | | | | | Linear table at the moment, to eventually be replaced with a hash table generated by a preprocessor. Dynamic table is retained so that builtins can be overridden. | ||
* | Implement fixed buffer vstrs; use them for import path. | Damien George | 2014-02-06 |
| | |||
* | Add staticmethod and classmethod to builtin namespace. | Damien George | 2014-02-06 |
| | |||
* | py: More output in showbc. | Damien George | 2014-02-06 |
| | |||
* | py: Fix compile of class with keyword arguments in bases. | Damien George | 2014-02-06 |
| | |||
* | Search paths properly on import and execute __init__.py if it exists. | Damien George | 2014-02-05 |
| | |||
* | Merge pull request #262 from pfalcon/sys-path | Damien George | 2014-02-05 |
|\ | | | | | Implement sys.path support | ||
| * | Remove older import helpers, no longer used. | Paul Sokolovsky | 2014-02-05 |
| | | |||
| * | Implement support for sys.path when loading modules. | Paul Sokolovsky | 2014-02-05 |
| | | | | | | | | | | | | | | | | sys.path is not initialized by rt_init(), that's left for platform-specific startup code. (For example, bare metal port may have some hardcoded defaults, and let user change sys.path directly; while port for OS with environment feature can take path from environment). If it's not explicitly initialized, modules will be imported only from a current directory. | ||
| * | Add generic MIN()/MAX() functions. | Paul Sokolovsky | 2014-02-05 |
| | | |||
* | | py: Fix bug with dual initialisation of RT_UNARY_OP_NOT. | Damien George | 2014-02-05 |
| | | | | | | | | Fixes Issue #261. | ||
* | | py: Add built-in super. | Damien George | 2014-02-05 |
|/ | |||
* | mp_obj_new_list(n, items): Copy items only if not-NULL. | Paul Sokolovsky | 2014-02-04 |
| | | | | Similar to mp_obj_new_tuple(). | ||
* | Use qstr id to create sys module. | Paul Sokolovsky | 2014-02-04 |
| | |||
* | Add ImportError. | Paul Sokolovsky | 2014-02-04 |
| | |||
* | Expose __import__() function. | Paul Sokolovsky | 2014-02-04 |
| | |||
* | py: Implement builtin exec. | Damien George | 2014-02-03 |
| | |||
* | py: Add very basic implementation of dir() builtin. | Damien George | 2014-02-02 |
| | | | | Only works on modules and class instances. | ||
* | Fix thinko with how bitfields were added to mp_obj_fun_native_t. | Paul Sokolovsky | 2014-02-02 |
| | | | | Structure is back to expected 16 bytes. | ||
* | Merge branch 'xbe-master' | Damien George | 2014-02-02 |
|\ | |||
| * | Change id to return signed integer. | Damien George | 2014-02-02 |
| | | |||
| * | Implement and add tests for the id() builtin function. | xbe | 2014-02-01 |
| | | |||
* | | Merge branch 'master' of github.com:micropython/micropython | Damien George | 2014-02-02 |
|\ \ | |||
| * | | Fix assert() usage. | Paul Sokolovsky | 2014-02-02 |
| | | | |||
| * | | Implement str/bytes rich comparisons. | Paul Sokolovsky | 2014-02-02 |
| |/ | |||
| * | Implement slicing for tuples. | Paul Sokolovsky | 2014-02-02 |
| | | |||
| * | Implement slicing for lists. | Paul Sokolovsky | 2014-02-02 |
| | | |||
| * | Factor out m_seq_get_fast_slice_indexes() fucntions as sequence helper. | Paul Sokolovsky | 2014-02-02 |
| | | | | | | | | | | Takes slice object and sequence length and computes subsequence indexes for case of slice step=1. | ||
| * | rt_unpack_sequence(): Support generic iterables. | Paul Sokolovsky | 2014-02-02 |
| | | |||
* | | py: Partially fix native emitter to work with latest runtime. | Damien George | 2014-02-02 |
|/ | | | | | Native emitter has been broken since stack order has changed from reverse to standard. This fix gets it partially working. | ||
* | Tidy up some comments. | Damien George | 2014-02-01 |
| | |||
* | py: Tidy up BINARY_OPs; negation done by special NOT bytecode. | Damien George | 2014-02-01 |
| | | | | | IS_NOT and NOT_IN are now compiled to IS + NOT and IN + NOT, with a new special NOT bytecode. | ||
* | py: Reduce code size of compiler by a bit. | Damien George | 2014-02-01 |
| | |||
* | py: Fix emitcpy so continue is compatible with CPython. | Damien George | 2014-02-01 |
| | |||
* | py: Implement break/continue from an exception with finally. | Damien George | 2014-02-01 |
| | | | | Still todo: break/continue from within the finally block itself. | ||
* | py: mp_execute_byte_code has 2 arg arrays, for more efficient default params. | Damien George | 2014-02-01 |
| | |||
* | Merge branch 'fun-defargs' of github.com:pfalcon/micropython into ↵ | Damien George | 2014-02-01 |
|\ | | | | | | | pfalcon-fun-defargs | ||
| * | Implement default function arguments (for Python functions). | Paul Sokolovsky | 2014-02-01 |
| | | | | | | | | | | | | | | | | 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. | ||
* | | Add exception stack unwind support for RETURN_VALUE. | Paul Sokolovsky | 2014-02-01 |
|/ | | | | | | | | This properly implements return from try/finally block(s). TODO: Consider if we need to do any value stack unwinding for RETURN_VALUE case. Intuitively, this is "success" return, so value stack should be in good shape, and unwinding shouldn't be required. | ||
* | Merge pull request #246 from pfalcon/exc_stack_entry | Damien George | 2014-01-31 |
|\ | | | | | vm: Introduce structure for exception stack entry, record entry type. | ||
| * | Update VM stacks comments. | Paul Sokolovsky | 2014-01-31 |
| | | |||
| * | vm: Introduce structure for exception stack entry, record entry type. | Paul Sokolovsky | 2014-01-31 |
| | | | | | | | | Also, handle SETUP_FINALLY opcode. | ||
* | | py: Simplified rt_call_function_n_kw. | Damien George | 2014-01-31 |
| | | |||
* | | Merge branch 'fix_str_call' of github.com:msiemens/micropython into ↵ | Damien George | 2014-01-31 |
|\ \ | | | | | | | | | | msiemens-fix_str_call |