2809 Commits

Author SHA1 Message Date
Paul Sokolovsky
31ba60f836 str: Initial implementation of string slicing.
Only step=1 and non-negative indexes are supported so far.
2014-01-04 02:35:48 +02:00
Paul Sokolovsky
ded0a1efa5 Implement BUILD_SLICE opcode (2-arg version). 2014-01-04 02:35:48 +02:00
Paul Sokolovsky
1c6de11f77 Add basic implementation of slice object.
So far, only start and stop integer indexes are supported. Step is
not supported, as well as objects of arbitrary types.
2014-01-04 02:35:48 +02:00
John R. Lenton
5d4a821339 Implements list.index. Fixes issue #57. 2014-01-04 00:26:30 +00:00
Damien George
98adccf7ac Merge pull request #52 from chipaca/master
Tweaks to list.pop.
2014-01-03 16:22:19 -08:00
John R. Lenton
e241e8c169 Implemented list.count 2014-01-03 23:57:28 +00:00
Paul Sokolovsky
c90c0f68a2 Move INT_FMT, etc. declaration into global mpconfig.h .
This in particular makes it available for stm port.
2014-01-04 01:57:00 +02:00
John R. Lenton
26c211648b Implemented list.copy. Fixes issue #54. 2014-01-03 23:42:17 +00:00
John R. Lenton
069ded9514 Added list.clear. Fixes issue #53. 2014-01-03 23:22:53 +00:00
John R. Lenton
97334c85d0 Merge remote-tracking branch 'upstream/master' 2014-01-03 22:55:16 +00:00
John R. Lenton
25f417c08c Worked on list.pop:
* Fixes issue #51
* Adds a specific error message for when you try to pop an empty list.
* Releases some memory if the list has shurnk a lot.
2014-01-03 22:53:18 +00:00
Paul Sokolovsky
b372bfca21 Rename default config file to mpconfig.h, and port's to mpconfigport.h.
mpconfig.h will automatically pull mpconfigport.h.
2014-01-03 19:03:11 +02:00
Paul Sokolovsky
ef18102b9e Make it possible to turn off collecting memory stats (MICROPY_MEM_STATS). 2014-01-03 18:55:24 +02:00
Paul Sokolovsky
780f555b2e Add new alloc metric: peak_bytes_allocated.
This is just max value of current_bytes_allocated seen.
2014-01-03 18:55:23 +02:00
Paul Sokolovsky
02de0c57d2 Add new alloc metric: current_bytes_allocated.
Unlike total_bytes_allocated, this tracks m_free()'s too.
2014-01-03 18:55:23 +02:00
Paul Sokolovsky
43f1c8080a m_realloc: Account only allocation size difference in total_bytes_allocated. 2014-01-03 18:55:23 +02:00
Damien George
4b57fac1c8 Merge pull request #43 from chipaca/master
Implement list addition.
2014-01-03 07:11:42 -08:00
Damien George
1fb031744f Change mp_compile so that it returns a function object for the module. 2014-01-03 14:22:03 +00:00
Damien George
14f945c2ca Add note about implementing inplace operators. 2014-01-03 14:09:31 +00:00
Damien George
66028ab6dc Basic implementation of import.
import works for simple cases.  Still work to do on finding the right
script, and setting globals/locals correctly when running an imported
function.
2014-01-03 14:03:48 +00:00
John R. Lenton
9bc56d933f Changed to use memcpy. 2014-01-03 10:13:38 +00:00
John R. Lenton
aeb16c36b0 Add a bit of whitespace. 2014-01-03 02:36:35 +00:00
John R. Lenton
81ad89c46e untabified 2014-01-03 02:32:40 +00:00
John R. Lenton
4cb80582c4 Add list addition (fixes: #39) 2014-01-03 02:27:08 +00:00
Damien George
aae7847508 Change old use of module creation to new proper use. 2014-01-03 00:10:22 +00:00
Damien George
2870862601 Add module object, to be used eventually for import. 2014-01-02 21:30:26 +00:00
Damien George
0ff883904a py: Fix generator where state array was incorrectly indexed.
Generator objects now allocate the object and the state in one malloc.
This improvement fixes Issue #38.
2014-01-02 20:57:05 +00:00
Damien George
ebd2e8702d py: __MACH__ also uses MAP_ANON. 2014-01-02 20:28:12 +00:00
Damien George
66327006fc py: change negative array indices with array - 1. 2014-01-02 18:20:41 +00:00
Damien George
27bf5b829b py: Add more bytecodes to showbc.c. 2014-01-02 18:15:33 +00:00
Paul Sokolovsky
bdf822b3d8 Add quick impl for MP_BC_LOAD_CONST_BYTES which just creates qstr so far.
This is based on the fact that qstr so far behaves more like byte string
than like Unicode string (for example, "012"[0] returns 48 (int)).
2014-01-02 18:51:19 +02:00
Damien George
fe8fb9165c py: remove depedence on strcat and stpcpy.
This fixes Issue #29, and means the core is no longer dependent on
string functions, except strlen.
2014-01-02 16:36:09 +00:00
Damien George
40563d56bd py: Add framework for built-in "type()" function. 2014-01-02 16:01:17 +00:00
Edd Barrett
67ab5ee779 On OpenBSD MAP_ANONYMOUS is called MAP_ANON. 2014-01-01 23:16:27 +00:00
Damien George
df884fe4cc py: change declaration of mp_map_t in obj.h (for issue #24). 2014-01-01 21:27:43 +00:00
Damien George
209d1b1835 py: add int() and float() built-ins, partially implemented. 2014-01-01 17:03:35 +00:00
Damien George
83c437cb0d Merge pull request #12 from pfalcon/minor-fixes
Minor fixes
2013-12-30 14:43:21 -08:00
Damien George
6baf76e28b py: make closures work. 2013-12-30 22:32:17 +00:00
Paul Sokolovsky
2efbc622cb Typo fix in comment. 2013-12-30 21:03:41 +02:00
Damien George
8cc96a35e5 Put unicode functions in unicode.c, and tidy their names. 2013-12-30 18:23:50 +00:00
Damien George
212c296c0b Make unix-cpy cross platform; remove dependency of asmx64 on mpconfig. 2013-12-30 12:52:32 +00:00
Damien George
cd340c44c2 Merge branch 'cross-plat' of https://github.com/pfalcon/micropython into pfalcon-cross-plat 2013-12-30 12:08:18 +00:00
Paul Sokolovsky
e85c38992d Make "unix" target be crossplatform and support x86, x64, ARM hosts. 2013-12-30 03:38:32 +02:00
Damien
dae7eb7226 py: add dict length function, and fix rt_store_set. 2013-12-29 22:32:51 +00:00
Damien
732407f1bf Change memory allocation API to require size for free and realloc. 2013-12-29 19:33:23 +00:00
Damien
02a7c41e76 py: implement POP_BLOCK in VM. 2013-12-29 18:48:37 +00:00
Paul Sokolovsky
44d0f3cfa2 Handle return value of read() call. 2013-12-29 20:11:05 +02:00
Damien
de690d128b Add unix-cpy, used to test Micro Python byte code against CPython. 2013-12-29 18:01:01 +00:00
Damien
b86e3f9293 py: implement some basic exception matching. 2013-12-29 17:17:43 +00:00
Damien
8f9e2ee157 Add code in VM to handle nested exceptions correctly. 2013-12-29 16:54:59 +00:00