- 24 May, 2014 1 commit
-
-
Damien George authored
Now of the form MICROPY_PY_*. See issue #35.
-
- 21 May, 2014 1 commit
-
-
Damien George authored
MP_ALLOC_* -> MICROPY_ALLOC_* MICROPY_PATH_MAX -> MICROPY_ALLOC_PATH_MAX MICROPY_ENABLE_REPL_HELPERS -> MICROPY_HELPER_REPL MICROPY_ENABLE_LEXER_UNIX -> MICROPY_HELPER_LEXER_UNIX MICROPY_EXTRA_* -> MICROPY_PORT_* See issue #35.
-
- 19 May, 2014 1 commit
-
-
Paul Sokolovsky authored
io.FileIO is binary I/O, ans actually optional. Default file type is io.TextIOWrapper, which provides str results. CPython3 explicitly describes io.TextIOWrapper as buffered I/O, but we don't have buffering support yet anyway.
-
- 15 May, 2014 1 commit
-
-
Paul Sokolovsky authored
Done in generalized manner, allowing any stream class to be specified as working with bytes.
-
- 11 May, 2014 1 commit
-
-
Damien George authored
For consistency with MICROPY_MOD_SYS_STDFILES, etc.
-
- 10 May, 2014 5 commits
-
-
Damien George authored
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
Takes 416 text bytes on x86.
-
Paul Sokolovsky authored
Tired of patching CPython stdlib for it.
-
Damien George authored
bytecode is the more widely used. See issue #590.
-
- 08 May, 2014 2 commits
-
-
Damien George authored
You can now do: X = const(123) Y = const(456 + X) and the compiler will replace X and Y with their values. See discussion in issue #266 and issue #573.
-
stijn authored
Extend the windows port so it compiles with the toolchain from Visual Studio 2013
-
- 06 May, 2014 1 commit
-
-
Paul Sokolovsky authored
Enable only on unix. To avoid unpleasant surprises with error codes.
-
- 05 May, 2014 2 commits
-
-
Paul Sokolovsky authored
-
Damien George authored
There are 2 locations in parser, and 1 in compiler, where memory allocation is not precise. In the parser it's the rule stack and result stack, in the compiler it's the array for the identifiers in the current scope. All other mallocs are exact (ie they don't allocate more than is needed). This patch adds tuning options (MP_ALLOC_*) to mpconfig.h for these 3 inexact allocations. The inexact allocations in the parser should actually be close to logarithmic: you need an exponentially larger script (absent pathological cases) to use up more room on the rule and result stacks. As such, the default allocation policy for these is now to start with a modest sized stack, but grow only in small increments. For the identifier arrays in the compiler, these now start out quite small (4 entries, since most functions don't have that many ids), and grow incrementally by 6 (since if you have more ids than 4, you probably have quite a few more, but it wouldn't be exponentially more). Partially addresses issue #560.
-
- 03 May, 2014 1 commit
-
-
Damien George authored
Blanket wide to all .c and .h files. Some files originating from ST are difficult to deal with (license wise) so it was left out of those. Also merged modpyb.h, modos.h, modstm.h and modtime.h in stmhal/.
-
- 30 Apr, 2014 2 commits
-
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
- 26 Apr, 2014 1 commit
-
-
Damien George authored
-
- 25 Apr, 2014 1 commit
-
-
Damien George authored
Also add a few STATIC's to some compile functions that should have them. Addresses issue #521.
-
- 17 Apr, 2014 3 commits
-
-
Damien George authored
On stmhal, computed gotos make the binary about 1k bigger, but makes it run faster, and we have the room, so why not. All tests pass on pyboard using computed gotos.
-
Damien George authored
Not all functions implemented. Not enabled on pyboard.
-
Damien George authored
-
- 15 Apr, 2014 1 commit
-
-
AZ Huang authored
-
- 14 Apr, 2014 2 commits
-
-
Damien George authored
Disabled by default. Enabled in unix port.
-
Andrew Scheller authored
See discussion on https://github.com/micropython/micropython/commit/2da81fa80c4cd965f05ad237d81d9764322fde20 Explicitly set `MP_ENDIANNESS_LITTLE` because that's the #define that is used in code elsewhere.
-
- 13 Apr, 2014 3 commits
-
-
Damien George authored
Enabled by MICROPY_ENABLE_PROPERTY.
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
- 11 Apr, 2014 1 commit
-
-
Paul Sokolovsky authored
A specific target can define either MP_ENDIANNESS_LITTLE or MP_ENDIANNESS_BIG to 1. Default is MP_ENDIANNESS_LITTLE. TODO: Autodetect based on compiler predefined macros?
-
- 10 Apr, 2014 2 commits
-
-
Damien George authored
Working towards trying to support compile-time constants (see discussion in issue #227), this patch allows the compiler to look inside arbitrary uPy objects at compile time. The objects to search are given by the macro MICROPY_EXTRA_CONSTANTS (so they must be constant/ROM objects), and the constant folding occures on forms base.attr (both base and attr must be id's). It works, but it breaks strict CPython compatibility, since the lookup will succeed even without importing the namespace.
-
Paul Sokolovsky authored
Only calcsize() and unpack() functions provided so far, for little-endian byte order. Format strings don't support repition spec (like "2b3i"). Unfortunately, dealing with all the various binary type sizes and alignments will lead to quite a bloated "binary" helper functions - if optimizing for speed. Need to think if using dynamic parametrized algos makes more sense.
-
- 05 Apr, 2014 1 commit
-
-
Damien George authored
-
- 03 Apr, 2014 1 commit
-
-
Paul Sokolovsky authored
So far just includes "open" function, which should be supplied by a port. TODO: Make the module #ifdef'ed.
-
- 25 Mar, 2014 1 commit
-
-
Damien George authored
Comes with some refactoring of code and renaming of files. All modules are now named mod*.[ch].
-
- 08 Mar, 2014 1 commit
-
-
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).
-
- 22 Feb, 2014 1 commit
-
-
Damien George authored
Some functionality is still missing (eg and, or, bit shift), and some things are buggy (eg subtract).
-
- 15 Feb, 2014 1 commit
-
-
Damien George authored
Each built-in exception is now a type, with base type BaseException. C exceptions are created by passing a pointer to the exception type to make an instance of. When raising an exception from the VM, an instance is created automatically if an exception type is raised (as opposed to an exception instance). Exception matching (RT_BINARY_OP_EXCEPTION_MATCH) is now proper. Handling of parse error changed to match new exceptions. mp_const_type renamed to mp_type_type for consistency.
-
- 14 Feb, 2014 1 commit
-
-
Paul Sokolovsky authored
Convert unix open() to such.
-
- 12 Feb, 2014 1 commit
-
-
Paul Sokolovsky authored
Some tools do not support local/static symbols (one example is GNU ld map file). Exposing all functions will allow to do detailed size comparisons, etc. Also, added bunch of statics where they were missing, and replaced few identity functions with global mp_identity().
-