summaryrefslogtreecommitdiffstatshomepage
path: root/py
Commit message (Collapse)AuthorAge
* Implement support for sys.path when loading modules.Paul Sokolovsky2014-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 Sokolovsky2014-02-05
|
* mp_obj_new_list(n, items): Copy items only if not-NULL.Paul Sokolovsky2014-02-04
| | | | Similar to mp_obj_new_tuple().
* Use qstr id to create sys module.Paul Sokolovsky2014-02-04
|
* Add ImportError.Paul Sokolovsky2014-02-04
|
* Expose __import__() function.Paul Sokolovsky2014-02-04
|
* py: Implement builtin exec.Damien George2014-02-03
|
* py: Add very basic implementation of dir() builtin.Damien George2014-02-02
| | | | Only works on modules and class instances.
* Fix thinko with how bitfields were added to mp_obj_fun_native_t.Paul Sokolovsky2014-02-02
| | | | Structure is back to expected 16 bytes.
* Merge branch 'xbe-master'Damien George2014-02-02
|\
| * Change id to return signed integer.Damien George2014-02-02
| |
| * Implement and add tests for the id() builtin function.xbe2014-02-01
| |
* | Merge branch 'master' of github.com:micropython/micropythonDamien George2014-02-02
|\ \
| * | Fix assert() usage.Paul Sokolovsky2014-02-02
| | |
| * | Implement str/bytes rich comparisons.Paul Sokolovsky2014-02-02
| |/
| * Implement slicing for tuples.Paul Sokolovsky2014-02-02
| |
| * Implement slicing for lists.Paul Sokolovsky2014-02-02
| |
| * Factor out m_seq_get_fast_slice_indexes() fucntions as sequence helper.Paul Sokolovsky2014-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 Sokolovsky2014-02-02
| |
* | py: Partially fix native emitter to work with latest runtime.Damien George2014-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 George2014-02-01
|
* py: Tidy up BINARY_OPs; negation done by special NOT bytecode.Damien George2014-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 George2014-02-01
|
* py: Fix emitcpy so continue is compatible with CPython.Damien George2014-02-01
|
* py: Implement break/continue from an exception with finally.Damien George2014-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 George2014-02-01
|
* Merge branch 'fun-defargs' of github.com:pfalcon/micropython into ↵Damien George2014-02-01
|\ | | | | | | pfalcon-fun-defargs
| * Implement default function arguments (for Python functions).Paul Sokolovsky2014-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 Sokolovsky2014-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_entryDamien George2014-01-31
|\ | | | | vm: Introduce structure for exception stack entry, record entry type.
| * Update VM stacks comments.Paul Sokolovsky2014-01-31
| |
| * vm: Introduce structure for exception stack entry, record entry type.Paul Sokolovsky2014-01-31
| | | | | | | | Also, handle SETUP_FINALLY opcode.
* | py: Simplified rt_call_function_n_kw.Damien George2014-01-31
| |
* | Merge branch 'fix_str_call' of github.com:msiemens/micropython into ↵Damien George2014-01-31
|\ \ | | | | | | | | | msiemens-fix_str_call
| * | Fix SIGSEV when running "a"()Markus Siemens2014-01-31
| |/ | | | | | | | | | | rt_call_function_n_kw did check for integers but not for strings being called. Added a check so running "a"() won't SIGSEV but throw an exception.
* | py: Make str.replace do 2 passes over the string.Damien George2014-01-31
| |
* | Merge branch 'master' of github.com:xbe/micropython into xbe-masterDamien George2014-01-31
|\ \ | |/ |/|
| * Implement str.replace and add tests for it.xbe2014-01-30
| |
* | Dump 4 more bytecodes (loop and finally ones).Paul Sokolovsky2014-01-31
| |
* | Typo fixes in comments.Paul Sokolovsky2014-01-31
|/
* py: Add MICROPY_ENABLE_FLOAT around a float specific piece of code.Damien George2014-01-31
|
* Merge pull request #239 from pfalcon/end_finallyDamien George2014-01-30
|\ | | | | vm: Add basic implementation of END_FINALLY opcode.
| * vm: Add basic implementation of END_FINALLY opcode.Paul Sokolovsky2014-01-30
| | | | | | | | | | | | Allows to have nested try blocks with except filters. TODO: Don't add END_FINALLY's exception re-raise points to traceback.
* | Fix Makefiles: -O3 option was not being applied; mkdir for STM.Damien George2014-01-30
|/
* py: Improve __bool__ and __len__ dispatch; add slots for them.Damien George2014-01-30
|
* Implement __bool__ and __len__ via unary_op virtual method for all types.Paul Sokolovsky2014-01-30
| | | | | | | __bool__() and __len__() are just the same as __neg__() or __invert__(), and require efficient dispatching implementation (not requiring search/lookup). type->unary_op() is just the right choice for this short of adding standalone virtual method(s) to already big mp_obj_type_t structure.
* realloc(): Log original memory ptr too.Paul Sokolovsky2014-01-30
| | | | To alloc complete memory alloc flow tracing.
* Merge branch 'master' of github.com:msiemens/micropython into msiemens-masterDamien George2014-01-29
|\
| * Fixed problems with nlx86.S on LinuxMarkus Siemens2014-01-28
| | | | | | | | | | Fixed '#ifdef's so Linux would compile again and added .scl and .type for Windows.
| * Added Windows port (see #233)Markus Siemens2014-01-28
| |