Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Merge branch 'master' of github.com:micropython/micropython | Damien George | 2014-04-05 |
|\ | |||
| * | py: Implement globals() and locals() builtins. | Paul Sokolovsky | 2014-04-06 |
| | | |||
* | | py: Replace stream_p with *stream_p in mp_obj_type_t. | Damien George | 2014-04-05 |
|/ | | | | | | | | 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/. | ||
* | py: Make all objects and instances derive from object. | Damien George | 2014-04-05 |
| | | | | | This makes isinstance(X, object) and issubclass(X, object) true for all X. | ||
* | py: Make globals and locals proper dictionary objects. | Damien George | 2014-04-05 |
| | | | | | | | | | | | 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. | ||
* | py: Change module globals from mp_map_t* to mp_obj_dict_t*. | Damien George | 2014-04-05 |
| | | | | | | Towards addressing issue #424. Had a small increase to ROM usage (order 60 bytes). | ||
* | 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 | 2014-04-05 |
|\ | | | | | Implement del | ||
| * | Move del to locals | mux | 2014-04-05 |
| | | |||
| * | Implement del | mux | 2014-04-03 |
| | | |||
* | | py: Change nlr_jump to nlr_raise, to aid in debugging. | Damien George | 2014-04-05 |
| | | | | | | | | | | | | This does not affect code size or performance when debugging turned off. To address issue #420. | ||
* | | Merge pull request #436 from dhylands/pfenv-print-int | Damien George | 2014-04-05 |
|\ \ | | | | | | | Change pfenv_print_int to take machine_uint_t rather than unsinged in | ||
| * | | Change pfenv_print_int to take machine_uint_t rather than unsinged in | Dave Hylands | 2014-04-05 |
| | | | | | | | | | | | | | | | | | | | | | With this change, the following works: >>> print('%#x' % 0x1234567890abcdef) 0x1234567890abcdef | ||
* | | | Merge pull request #435 from dhylands/str-modulo-float | Damien George | 2014-04-05 |
|\| | | | | | | | | Allow floating point arguments with %d,i,u,o,x,X formats | ||
| * | | Allow floating point arguments with %d,i,u,o,x,X formats | Dave Hylands | 2014-04-05 |
| | | | |||
* | | | Merge pull request #433 from pfalcon/getattr-3arg | Damien George | 2014-04-05 |
|\ \ \ | | | | | | | | | py: Support 3-arg getattr() builtin (with default value). | ||
| * | | | py: Support 3-arg getattr() builtin (with default value). | Paul Sokolovsky | 2014-04-05 |
| | | | | |||
* | | | | Merge branch 'master' of github.com:micropython/micropython | Damien George | 2014-04-05 |
|\ \ \ \ | |||
| * | | | | mp_obj_get_int(): Add warning against adding implicit float->int conversion. | Paul Sokolovsky | 2014-04-05 |
| | | | | | |||
* | | | | | py: Fix delete operation on map/dict and set objects. | Damien George | 2014-04-05 |
|/ / / / | | | | | | | | | | | | | | | | | | | | | Hash table can now be completely full (ie now NULL entry) before a resize is triggered. Use sentinel value to indicate delete entry in the table. | ||
* | | | | py: Fix bug in DELETE_SUBSCR bytecode, decreasing sp too much. | Damien George | 2014-04-05 |
| | | | | |||
* | | | | py: Implement DELETE_SUBSCR bytecode; implement mp_obj_dict_delete. | Damien George | 2014-04-05 |
| | | | | |||
* | | | | Merge pull request #431 from pfalcon/unbreak-map-remove | Damien George | 2014-04-05 |
|\ \ \ \ | | | | | | | | | | | map: When removing a key, don't NULL the entry, but mark as deleted. | ||
| * | | | | map: When removing a key, don't NULL the entry, but mark as deleted. | Paul Sokolovsky | 2014-04-05 |
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When searching next time, such entry should be just skipped, not terminate the search. It's known that marking techique is not efficient at the presense of many removes, but namespace usage should not require many deletes, and as for user dictionaries - well, open addressing map table with linear rehashing and load factor of ~1 is not particularly efficient at all ;-). TODO: May consider "shift other entries in cluster" approach as an alternative. | ||
* | | | | objfun: Add equality support. | Paul Sokolovsky | 2014-04-05 |
| |/ / |/| | | |||
* | | | objtype: Add equality test for type types. | Paul Sokolovsky | 2014-04-05 |
| | | | |||
* | | | py: Allow types to be hashable. | Paul Sokolovsky | 2014-04-05 |
| | | | | | | | | | | | | Quite natural to have d[int] = handle_int . | ||
* | | | py: Put default namespace into module __main__. | Paul Sokolovsky | 2014-04-05 |
|/ / | | | | | | | That's how CPython has it, in particular, "import __main__" should work. | ||
* | | mp_load_name(): Optimize for outer scope where locals == globals. | Paul Sokolovsky | 2014-04-05 |
| | | |||
* | | map: Add mp_map_dump() (#ifdef'ed) to be handy when debugging maps. | Paul Sokolovsky | 2014-04-05 |
| | | |||
* | | Merge pull request #421 from dhylands/git-version | Damien George | 2014-04-04 |
|\ \ | | | | | | | Add the git version and build-date to the banner | ||
| * | | Add the git version to the banner | Dave Hylands | 2014-04-03 |
| | | | |||
* | | | py: Make False and True act like 0 and 1 for integer arithmetic. | Damien George | 2014-04-04 |
| | | | |||
* | | | py: Allow dict constructor to take keyword arguments. | Damien George | 2014-04-04 |
| | | | |||
* | | | py: Remove mp_obj_less (use mp_binary_op(MP_BINARY_OP_LESS..) instead). | Damien George | 2014-04-04 |
| | | | |||
* | | | Merge pull request #422 from dhylands/str-modulo | Damien George | 2014-04-04 |
|\ \ \ | | | | | | | | | Str modulo | ||
| * | | | Implements most of str.modulo | Dave Hylands | 2014-04-03 |
| |/ / | | | | | | | | | | | | | The alternate form for floating point doesn't work yet. The %(name)s form doesn't work yet. | ||
* | | | py: Enable optimisation of multiplying 2 small ints in compiler. | Damien George | 2014-04-04 |
| | | | |||
* | | | py: This time, real proper overflow checking of small int power. | Damien George | 2014-04-04 |
| | | | | | | | | | | | | Previous overflow test was inadequate. | ||
* | | | py: Add m_malloc_fail function to handle memory allocation error. | Damien George | 2014-04-04 |
|/ / | | | | | | | A malloc/realloc fail now throws MemoryError. | ||
* | | py: Handle small int power overflow correctly. | Damien George | 2014-04-04 |
| | | |||
* | | Changes to get unix/ port compiling on Cygwin. | Damien George | 2014-04-03 |
| | | |||
* | | py: Add "io" module. | Paul Sokolovsky | 2014-04-03 |
| | | | | | | | | | | | | So far just includes "open" function, which should be supplied by a port. TODO: Make the module #ifdef'ed. | ||
* | | py: More robust int conversion and overflow checking. | Damien George | 2014-04-03 |
| | | |||
* | | Merge branch 'fix-format-int' of github.com:dhylands/micropython into ↵ | Damien George | 2014-04-02 |
|\ \ | | | | | | | | | | | | | | | | | | | dhylands-fix-format-int Conflicts: py/objstr.c | ||
| * | | Fix str.format to work with {:f/g/e} and ints | Dave Hylands | 2014-04-02 |
| | | | | | | | | | | | | Also fix objstr.c to compile when floats disabled. | ||
* | | | py: Fix regress for printing of floats and #if. | Damien George | 2014-04-02 |
|/ / | | | | | | | | | Also change formating modifier in test script (it still passes with original format though). | ||
* / | gc: Uses uint defined in misc.h. | Paul Sokolovsky | 2014-04-02 |
|/ | |||
* | py: Wrap compile_scope_inline_asm in #if; remove comment from misc.h. | Damien George | 2014-04-02 |
| |