- 13 Apr, 2014 3 commits
-
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
- 12 Apr, 2014 1 commit
-
-
Paul Sokolovsky authored
ffi is needed to use micropython-lib, so let's have it enabled by default, then folks who have troubles with libffi can disable it, instead of everyone doing manual actions again and again.
-
- 11 Apr, 2014 2 commits
-
-
xbe authored
-
Paul Sokolovsky authored
-
- 10 Apr, 2014 1 commit
-
-
Damien George authored
-
- 08 Apr, 2014 7 commits
-
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
Damien George authored
-
Damien George authored
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).
-
Damien George authored
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.
-
Paul Sokolovsky authored
They correspond to io.FileIO in io module hierarchy (with small caveat that io.FileIO is raw file and works with bytes, not strings).
-
Paul Sokolovsky authored
-
- 07 Apr, 2014 1 commit
-
-
Damien George authored
Partly addresses issue #154.
-
- 06 Apr, 2014 1 commit
-
-
Damien George authored
Also add command line option to unix port to select emitter.
-
- 05 Apr, 2014 4 commits
-
-
Damien George authored
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/.
-
Damien George authored
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.
-
Damien George authored
-
Damien George authored
This does not affect code size or performance when debugging turned off. To address issue #420.
-
- 04 Apr, 2014 4 commits
-
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
Otherwise we have mixup between system and GC alloc.
-
Damien George authored
Pointers are 2x bigger on 64 bit machines, so we should allocate twice the memory to have a comparable heap size.
-
- 03 Apr, 2014 2 commits
-
-
Damien George authored
-
Paul Sokolovsky authored
-
- 02 Apr, 2014 4 commits
-
-
Paul Sokolovsky authored
GC support for "unix" port was implemented some time ago, but still not enabled.
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
For example, we still build w/o GC enabled, so cannot really set heap size.
-
Paul Sokolovsky authored
Previosuly just silently exited.
-
- 31 Mar, 2014 1 commit
-
-
Damien George authored
-
- 30 Mar, 2014 2 commits
-
-
Damien George authored
Pretty much everyone needs to include map.h, since it's such an integral part of the Micro Python object implementation. Thus, the definitions are now in obj.h instead. map.h is removed.
-
Damien George authored
Mostly just a global search and replace. Except rt_is_true which becomes mp_obj_is_true. Still would like to tidy up some of the names, but this will do for now.
-
- 29 Mar, 2014 2 commits
-
-
Damien George authored
-
Damien George authored
-
- 26 Mar, 2014 2 commits
-
-
Damien George authored
Originally, .methods was used for methods in a ROM class, and locals_dict for methods in a user-created class. That distinction is unnecessary, and we can use locals_dict for ROM classes now that we have ROMable maps. This removes an entry in the bloated mp_obj_type_t struct, saving a word for each ROM object and each RAM object. ROM objects that have a methods table (now a locals_dict) need an extra word in total (removed the methods pointer (1 word), no longer need the sentinel (2 words), but now need an mp_obj_dict_t wrapper (4 words)). But RAM objects save a word because they never used the methods entry. Overall the ROM usage is down by a few hundred bytes, and RAM usage is down 1 word per user-defined type/class. There is less code (no need to check 2 tables), and now consistent with the way ROM modules have their tables initialised. Efficiency is very close to equivaluent.
-
Damien George authored
Addresses issue #377.
-
- 16 Mar, 2014 1 commit
-
-
xbe authored
Remove unnecessary includes. Add includes that improve portability.
-
- 08 Mar, 2014 2 commits
-
-
Damien George authored
-
Damien George authored
mp_module_obj_t can now be put in ROM. Configuration of float type is now similar to longint: can now choose none, float or double as the implementation. math module has basic math functions. For STM port, these are not yet implemented (they are just stub functions).
-