summaryrefslogtreecommitdiffstatshomepage
path: root/py
Commit message (Collapse)AuthorAge
* Merge branch 'master' of github.com:micropython/micropythonDamien George2014-04-05
|\
| * py: Implement globals() and locals() builtins.Paul Sokolovsky2014-04-06
| |
* | py: Replace stream_p with *stream_p in mp_obj_type_t.Damien George2014-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 George2014-04-05
| | | | | This makes isinstance(X, object) and issubclass(X, object) true for all X.
* py: Make globals and locals proper dictionary objects.Damien George2014-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 George2014-04-05
| | | | | | Towards addressing issue #424. Had a small increase to ROM usage (order 60 bytes).
* py: Fix float printing on stmhal.Damien George2014-04-05
|
* Improve GC finalisation code; add option to disable it.Damien George2014-04-05
|
* Merge pull request #425 from iabdalkader/delDamien George2014-04-05
|\ | | | | Implement del
| * Move del to localsmux2014-04-05
| |
| * Implement delmux2014-04-03
| |
* | py: Change nlr_jump to nlr_raise, to aid in debugging.Damien George2014-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-intDamien George2014-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 inDave Hylands2014-04-05
| | | | | | | | | | | | | | | | | | | | | With this change, the following works: >>> print('%#x' % 0x1234567890abcdef) 0x1234567890abcdef
* | | Merge pull request #435 from dhylands/str-modulo-floatDamien George2014-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 formatsDave Hylands2014-04-05
| | |
* | | Merge pull request #433 from pfalcon/getattr-3argDamien George2014-04-05
|\ \ \ | | | | | | | | py: Support 3-arg getattr() builtin (with default value).
| * | | py: Support 3-arg getattr() builtin (with default value).Paul Sokolovsky2014-04-05
| | | |
* | | | Merge branch 'master' of github.com:micropython/micropythonDamien George2014-04-05
|\ \ \ \
| * | | | mp_obj_get_int(): Add warning against adding implicit float->int conversion.Paul Sokolovsky2014-04-05
| | | | |
* | | | | py: Fix delete operation on map/dict and set objects.Damien George2014-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 George2014-04-05
| | | |
* | | | py: Implement DELETE_SUBSCR bytecode; implement mp_obj_dict_delete.Damien George2014-04-05
| | | |
* | | | Merge pull request #431 from pfalcon/unbreak-map-removeDamien George2014-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 Sokolovsky2014-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 Sokolovsky2014-04-05
| |/ / |/| |
* | | objtype: Add equality test for type types.Paul Sokolovsky2014-04-05
| | |
* | | py: Allow types to be hashable.Paul Sokolovsky2014-04-05
| | | | | | | | | | | | Quite natural to have d[int] = handle_int .
* | | py: Put default namespace into module __main__.Paul Sokolovsky2014-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 Sokolovsky2014-04-05
| |
* | map: Add mp_map_dump() (#ifdef'ed) to be handy when debugging maps.Paul Sokolovsky2014-04-05
| |
* | Merge pull request #421 from dhylands/git-versionDamien George2014-04-04
|\ \ | | | | | | Add the git version and build-date to the banner
| * | Add the git version to the bannerDave Hylands2014-04-03
| | |
* | | py: Make False and True act like 0 and 1 for integer arithmetic.Damien George2014-04-04
| | |
* | | py: Allow dict constructor to take keyword arguments.Damien George2014-04-04
| | |
* | | py: Remove mp_obj_less (use mp_binary_op(MP_BINARY_OP_LESS..) instead).Damien George2014-04-04
| | |
* | | Merge pull request #422 from dhylands/str-moduloDamien George2014-04-04
|\ \ \ | | | | | | | | Str modulo
| * | | Implements most of str.moduloDave Hylands2014-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 George2014-04-04
| | |
* | | py: This time, real proper overflow checking of small int power.Damien George2014-04-04
| | | | | | | | | | | | Previous overflow test was inadequate.
* | | py: Add m_malloc_fail function to handle memory allocation error.Damien George2014-04-04
|/ / | | | | | | A malloc/realloc fail now throws MemoryError.
* | py: Handle small int power overflow correctly.Damien George2014-04-04
| |
* | Changes to get unix/ port compiling on Cygwin.Damien George2014-04-03
| |
* | py: Add "io" module.Paul Sokolovsky2014-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 George2014-04-03
| |
* | Merge branch 'fix-format-int' of github.com:dhylands/micropython into ↵Damien George2014-04-02
|\ \ | | | | | | | | | | | | | | | | | | dhylands-fix-format-int Conflicts: py/objstr.c
| * | Fix str.format to work with {:f/g/e} and intsDave Hylands2014-04-02
| | | | | | | | | | | | Also fix objstr.c to compile when floats disabled.
* | | py: Fix regress for printing of floats and #if.Damien George2014-04-02
|/ / | | | | | | | | Also change formating modifier in test script (it still passes with original format though).
* / gc: Uses uint defined in misc.h.Paul Sokolovsky2014-04-02
|/
* py: Wrap compile_scope_inline_asm in #if; remove comment from misc.h.Damien George2014-04-02
|