Wykres commitów

608 Commity (33996685dff97fc070a19d6f30dc61019b26016d)

Autor SHA1 Wiadomość Data
Paul Sokolovsky 33996685df Add len() support for arrays. 2014-01-21 23:59:50 +02:00
Damien George 12eaccacda Merge branch 'master' of github.com:micropython/micropython
Conflicts:
	py/objstr.c
	py/py.mk
	py/stream.c
	unix/main.c
	unix/socket.c
2014-01-21 21:54:15 +00:00
Damien George 55baff4c9b Revamp qstrs: they now include length and hash.
Can now have null bytes in strings.  Can define ROM qstrs per port using
qstrdefsport.h
2014-01-21 21:40:13 +00:00
Paul Sokolovsky 7280f79088 run-tests: Allow to run tests selectively via command line. 2014-01-21 05:02:58 +02:00
Paul Sokolovsky 4c316552c1 Implement str.split(None).
Note that splitting by explicit string is not implemented so far.
2014-01-21 05:01:21 +02:00
Paul Sokolovsky 7380a83780 str: Implement proper string (instead of byte string) indexing.
Also, support negative indexes.
2014-01-21 02:25:59 +02:00
Paul Sokolovsky 545591a696 Implement string multiplication. 2014-01-21 00:39:12 +02:00
Paul Sokolovsky 439542f70c sequence.c: Start to refactor sequence operations for reuse among types. 2014-01-21 00:39:12 +02:00
Paul Sokolovsky 51ee44a718 unix file: Refactor and add sys.stdout/stdin/stderr. 2014-01-20 23:50:55 +02:00
Paul Sokolovsky 8965a5eb1e objstr: More support for MP_OBJ_QSTR. 2014-01-20 23:34:17 +02:00
Paul Sokolovsky e6da0df6d1 mp_obj_get_type_str(): Handle MP_OBJ_QSTR. 2014-01-20 23:01:06 +02:00
Paul Sokolovsky d991da7263 socket-client, socket-server examples now run on both Micro- and C-Python. 2014-01-20 20:37:01 +02:00
Paul Sokolovsky a80ff04fe7 Add dummy bytes() constructor.
Currently, MicroPython strings are mix between CPython byte and unicode
strings. So, conversion is null so far. This dummy implementation is
intended for compatibility with CPython (so, same code can run on both).
2014-01-20 20:37:01 +02:00
Paul Sokolovsky f0cfb8cb45 Don't preimport socket module. 2014-01-20 20:37:01 +02:00
Paul Sokolovsky fc35aa6828 unix socket: Add send() and recv() methods.
CPython _socket actually have only those and doesn't provide stream
interface (higher-level CPython "socket" what adds this).

+516 bytes x86.
2014-01-20 20:37:01 +02:00
Paul Sokolovsky ff3bdea49d stream_read(): Shrink memory block to actual read size. 2014-01-20 20:37:01 +02:00
Paul Sokolovsky decd597273 unix io.FileIO: Add iteration support.
A file cannot be iterated concurrently, so we make io.FileIO its own
iterator.
2014-01-20 18:42:08 +02:00
Paul Sokolovsky d54bef7692 stream: Add generic unbuffered iternext method.
Uses stream_unbuffered_readline underline.
2014-01-20 18:42:08 +02:00
Paul Sokolovsky dff3f896d7 mp_identity(): Add generic identity function.
Useful as getiter method for objects which are their own iterators, etc.
2014-01-20 18:42:08 +02:00
Paul Sokolovsky 3754c4a040 mp_obj_get_qstr(): Handle MP_OBJ_QSTR. 2014-01-20 18:23:38 +02:00
Damien George 91d457a277 py: Put micropython module init code in builtinmp.c. 2014-01-20 10:30:24 +00:00
Damien George 589233622c Merge pull request #198 from pfalcon/expose-memstat
Expose memory stats functions via "micropython" module.
2014-01-20 02:01:50 -08:00
Paul Sokolovsky 440cc3f028 Expose memory stats functions via "micropython" module.
These are micropython.mem_total(), .mem_current(), .mem_peak(). These are 3
individual functions with simple scalar return value to make sure that
calls to these functions themselves have minimal (hopefully zero) impact on
memory allocation.
2014-01-20 02:20:40 +02:00
Damien George 164774c1c1 Merge branch 'master' of github.com:micropython/micropython 2014-01-20 00:03:03 +00:00
Damien George 7d08935458 Rename unix binary to 'micropython'. 2014-01-20 00:02:39 +00:00
Paul Sokolovsky 159c0f75da Don't implicitly import "sys" module. 2014-01-20 01:57:20 +02:00
Paul Sokolovsky fe2690da0a unix: Implement sys.argv. 2014-01-20 01:00:28 +02:00
Paul Sokolovsky f477bfbc75 Pre-create sys module. 2014-01-20 01:00:28 +02:00
Paul Sokolovsky bb33cc66fb Properly print MP_OBJ_QSTR objects. 2014-01-20 01:00:28 +02:00
Damien George 2c7a1b2ad1 Merge pull request #197 from pfalcon/mod-singletons
Implement modules as singletons Python semantics.
2014-01-19 14:52:07 -08:00
Paul Sokolovsky d720ab5236 Implement modules as singletons Python semantics.
In Python, importing module several times returns same underlying module
object. This also fixes import statement handling for builtin modules.

There're still issues:
1. CPython exposes set of loaded modules as sys.modules, we may want to
do that either.
2. Builtin modules are implicitly imported, which is not really correct.
We should separate registering a (builtin) module and importing a module.
CPython keeps builtin module names in sys.builtin_module_names .
2014-01-20 00:38:39 +02:00
Damien George f438b936e0 Small changes to README. 2014-01-19 18:18:43 +00:00
Damien George 5f7e8dc176 Merge branch 'master' of github.com:micropython/micropython 2014-01-19 17:41:01 +00:00
Damien George b2ebb161d4 stm: Upgrade ST peripheral library from 1.1.0 to 1.3.0. 2014-01-19 17:40:35 +00:00
Paul Sokolovsky db796ef84d Add README for tests/. 2014-01-19 18:51:59 +02:00
Paul Sokolovsky 9954b4b99d Add directory for I/O tests with basic test for file methods. 2014-01-19 18:46:21 +02:00
Damien George 1277753812 stm: Upgrade to latest CMSIS libraries.
CMSIS V3.01 -> V3.20. Now in stm/cmsis to keep separate from ST
libraries.
2014-01-19 16:43:33 +00:00
Paul Sokolovsky 8c3858b016 Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
Damien George a11ceca807 Change int to uint for n_args in function with variable arguments. 2014-01-19 16:02:09 +00:00
Damien George 136b149e41 py: Add full traceback to exception printing. 2014-01-19 12:38:49 +00:00
Damien George 49f6a99c65 Merge branch 'master' of github.com:micropython/micropython 2014-01-19 11:50:14 +00:00
Damien George cbd2f7482c py: Add module/function/class name to exceptions.
Exceptions know source file, line and block name.

Also tidy up some debug printing functions and provide a global
flag to enable/disable them.
2014-01-19 11:48:48 +00:00
Paul Sokolovsky 50a2d6ff59 Fix incorrect prototype of mp_builtin_open() after args refactor. 2014-01-19 07:50:45 +02:00
Paul Sokolovsky e2f3e1d24a Add socket examples (simple HTTP client and server). 2014-01-19 07:29:30 +02:00
Damien George e02b2d4391 py: Temporary fix for bug where not enough VM state is allocated. 2014-01-19 01:14:37 +00:00
Damien George ebde0b8a09 Tiny optimisation in objlist.c; a new test for inheritance. 2014-01-19 00:47:40 +00:00
Damien George a8a6db2a1d Fix warnings about int/pointer casting. 2014-01-18 23:50:12 +00:00
Damien George 2025e82cbf Merge branch 'master' of github.com:micropython/micropython 2014-01-18 23:43:31 +00:00
Damien George 932bf1c48f py: Fix VM/runtime unpack sequence bug, Issue #193. 2014-01-18 23:42:49 +00:00
Paul Sokolovsky a2715c05c6 Add objarray.h . 2014-01-19 01:40:47 +02:00