Age | Commit message (Collapse) | Author | |
---|---|---|---|
2014-04-08 | Merge branch 'master' of github.com:micropython/micropython | Damien George | |
2014-04-08 | py: Finish implementation of all del opcodes. | Damien George | |
At this point, all opcodes are now implemented! Some del opcodes have been combined with store opcodes, with the value to store being MP_OBJ_NULL. | |||
2014-04-08 | py: Make bytearray a proper type. | Paul Sokolovsky | |
2014-04-08 | Merge branch 'master' of github.com:micropython/micropython | Damien George | |
2014-04-08 | py: Improve inline assembler; add a few more opcodes. | Damien George | |
2014-04-08 | py: implement UNPACK_EX byte code (for: a, *b, c = d) | Damien George | |
2014-04-08 | bytes: Support buffer protocol. | Paul Sokolovsky | |
2014-04-08 | bytearray: Support bytearray(int) constructor. | Paul Sokolovsky | |
To create bytearray of given length. | |||
2014-04-08 | py: Raise exception for unimplemented byte codes. | Damien George | |
2014-04-08 | py: Improve compiler syntax errors; catch more errors. | Damien George | |
2014-04-08 | Add a check for NULL nlr_top in nlr_jump. | Damien George | |
If no nlr_buf has been pushed, and an nlr_jump is called, then control is transferred to nlr_jump_fail (which should bail out with a fatal error). | |||
2014-04-08 | py: Continue line if last character is backslash. | Damien George | |
2014-04-08 | py: Improve GC locking/unlocking, and make it part of the API. | Damien George | |
2014-04-08 | Merge pull request #451 from lurch/repr-fixes | Damien George | |
Display \r and \t escape codes in string repr | |||
2014-04-08 | Improve REPL detecting when input needs to continue. | Damien George | |
Full CPython compatibility with this requires actually parsing the input so far collected, and if it fails parsing due to lack of tokens, then continue collecting input. It's not worth doing it this way. Not having compatibility at this level does not hurt the goals of Micro Python. | |||
2014-04-08 | Display \r and \t escape codes in string repr | Andrew Scheller | |
2014-04-08 | py: Rename pfenv_print_int to pfenv_print_mp_int, and add back former. | Damien George | |
stmhal relies on pfenv_* to implement its printf. Thus, it needs a pfenv_print_int which prints a proper 32-bit integer. With latest change to pfenv, this function became one that took mp_obj_t, and extracted the integer value from that object. To fix temporarily, pfenv_print_int has been renamed to pfenv_print_mp_int (to indicate it takes a mp_obj_t for the int), and pfenv_print_int has been added (which takes a normal C int). Currently, pfenv_print_int proxies to pfenv_print_mp_int, but this means it looses the MSB. Need to find a way to fix this, but the only way I can think of will duplicate lots of code. | |||
2014-04-07 | Fix truncation problem when using longlong implementation. | Dave Hylands | |
2014-04-07 | Add string formatting support for longlong and mpz. | Dave Hylands | |
2014-04-07 | Merge pull request #439 from lurch/makefile-tweaks | Damien George | |
Makefile tweaks | |||
2014-04-07 | py: Detect unmatched tripple quote in repl helper. | Damien George | |
2014-04-07 | Merge remote-tracking branch 'upstream/master' into makefile-tweaks | Andrew Scheller | |
2014-04-07 | Replace some Makefile commands with variables in py/mkenv.mk | Andrew Scheller | |
2014-04-07 | py: Revert revert for allocation policy of set hash table. | Damien George | |
2014-04-07 | objset: Fix incorrect workaround against mp_set_init() munging alloc size. | Paul Sokolovsky | |
No longer needed after recent change which guarantees that mp_set_init() will allocate exact number of slots requested. | |||
2014-04-07 | py: Revert change to allocation policy for mp_set_t. | Damien George | |
Seems that this fixes all set tests. | |||
2014-04-07 | py: Fix str.replace for case when arg 0 or 1 is empty string. | Damien George | |
2014-04-06 | objdict: Implement equality operator. | Paul Sokolovsky | |
Sure, it's O(n^2). | |||
2014-04-06 | py: Fix dict.copy() and low-level map/set allocation. | Paul Sokolovsky | |
Two things: 1) set flags in copy properly; make mp_map_init() not be too smart and do something with requested alloc size. Policy of using prime numbers for alloc size is high-level policy which should be applied at corresponding high levels. Low-level functions should just do what they're asked to, because they don't have enough context to be smarter than that. For example, munging with alloc size of course breaks dict copying (as changing sizes requires rehashing). | |||
2014-04-06 | objdict: Support creating dict from another dict. | Paul Sokolovsky | |
2014-04-06 | py: Implement more features in native emitter. | Damien George | |
On x64, native emitter now passes 70 of the tests. | |||
2014-04-06 | py: Add option to compiler to specify default code emitter. | Damien George | |
Also add command line option to unix port to select emitter. | |||
2014-04-06 | py: str.split: handle non-default separator. | Damien George | |
2014-04-06 | py: Revert mp_load_attr() to its previous state (not supporting default val). | Paul Sokolovsky | |
Based on the discussion in #433. mp_load_attr() is critical-path function, so any extra check will slowdown any script. As supporting default val required only for getattr() builtin, move correspending implementation there (still as a separate function due to concerns of maintainability of such almost-duplicated code instances). | |||
2014-04-05 | Merge branch 'master' of github.com:micropython/micropython | Damien George | |
2014-04-05 | py: Make mp_map_lookup not allocate memory on removal. | Damien George | |
2014-04-06 | py: Optimize locals()/globals() implementation. | Paul Sokolovsky | |
2014-04-05 | Merge branch 'master' of github.com:micropython/micropython | Damien George | |
2014-04-05 | py: Replace stream_p with *stream_p in mp_obj_type_t. | Damien George | |
This is to reduce ROM usage. stream_p is used in file and socket types only (at the moment), so seems a good idea to make the protocol functions a pointer instead of the actual structure. It saves 308 bytes of ROM in the stmhal/ port, 928 in unix/. | |||
2014-04-06 | py: Implement globals() and locals() builtins. | Paul Sokolovsky | |
2014-04-05 | py: Make all objects and instances derive from object. | Damien George | |
This makes isinstance(X, object) and issubclass(X, object) true for all X. | |||
2014-04-05 | py: Make globals and locals proper dictionary objects. | Damien George | |
Finishes addressing issue #424. In the end this was a very neat refactor that now makes things a lot more consistent across the py code base. It allowed some simplifications in certain places, now that everything is a dict object. Also converted builtins tables to dictionaries. This will be useful when we need to turn builtins into a proper module. | |||
2014-04-05 | py: Change module globals from mp_map_t* to mp_obj_dict_t*. | Damien George | |
Towards addressing issue #424. Had a small increase to ROM usage (order 60 bytes). | |||
2014-04-05 | py: Fix float printing on stmhal. | Damien George | |
2014-04-05 | Improve GC finalisation code; add option to disable it. | Damien George | |
2014-04-05 | Merge pull request #425 from iabdalkader/del | Damien George | |
Implement del | |||
2014-04-05 | py: Change nlr_jump to nlr_raise, to aid in debugging. | Damien George | |
This does not affect code size or performance when debugging turned off. To address issue #420. | |||
2014-04-05 | Merge pull request #436 from dhylands/pfenv-print-int | Damien George | |
Change pfenv_print_int to take machine_uint_t rather than unsinged in | |||
2014-04-05 | Merge pull request #435 from dhylands/str-modulo-float | Damien George | |
Allow floating point arguments with %d,i,u,o,x,X formats | |||
2014-04-05 | Merge pull request #433 from pfalcon/getattr-3arg | Damien George | |
py: Support 3-arg getattr() builtin (with default value). |