Damien
|
660365e14c
|
py: split runtime into map, obj, builtin.
|
2013-12-17 18:27:24 +00:00 |
|
Damien
|
a1b2693161
|
py: remove further unnecessary emit_verbatim code.
|
2013-12-12 15:34:40 +00:00 |
|
Damien
|
e388f1034e
|
py: fix bug with doc string not recognised after first newline of file.
|
2013-12-12 15:24:38 +00:00 |
|
Damien
|
02f8941bf6
|
py: reduce use of emit_verbatim calls to minimum.
|
2013-12-12 15:13:36 +00:00 |
|
Damien
|
9ecbcfff99
|
py: work towards working closures.
|
2013-12-11 00:41:43 +00:00 |
|
Damien
|
318aec6ba9
|
py: emit correct id for closed over variables.
|
2013-12-10 18:28:17 +00:00 |
|
Damien
|
6332174ab4
|
py: compiler supports string juxtaposition=concatenation.
|
2013-12-10 17:41:49 +00:00 |
|
Damien
|
db4c361f1c
|
py: add skeletal import functionality.
|
2013-12-10 17:27:24 +00:00 |
|
Damien
|
033d17a633
|
py: built-in range now accepts variable number of arguments.
|
2013-11-28 19:22:56 +00:00 |
|
Damien
|
d79338969b
|
py: restrict further when for-range optimisation is done.
|
2013-11-28 19:12:18 +00:00 |
|
Damien
|
86c7fc7dd9
|
py: add list pop and sort, unpack_sequence, and keywords in method_call.
|
2013-11-26 15:16:41 +00:00 |
|
Damien
|
6f3e7fc505
|
py: add UNPACK_SEQUENCE and keyword methods to VM.
|
2013-11-26 15:15:50 +00:00 |
|
Damien
|
ff099f36d6
|
py: add more functionality to showbc.
|
2013-11-26 15:14:50 +00:00 |
|
Damien
|
d47f9d5a4f
|
py: add call to __init__ when instantiating class object.
|
2013-11-25 23:40:02 +00:00 |
|
Damien
|
c1075ddc8f
|
py: add some more opcodes to showbc.
|
2013-11-25 23:39:36 +00:00 |
|
Damien
|
f03001f8a6
|
Add function to decode and show byte code.
|
2013-11-17 13:19:33 +00:00 |
|
Damien
|
0446a0d76d
|
Change some debugging/output messages for native code generation.
|
2013-11-17 13:16:36 +00:00 |
|
Damien
|
6d4f3462c4
|
Viper: function calls now convert constant arguments to objects.
|
2013-11-16 20:44:39 +00:00 |
|
Damien
|
6b92d451b2
|
Add len and subscr (a hack) support for strings.
|
2013-11-09 20:13:55 +00:00 |
|
Damien
|
94658e2e25
|
Add JUMP_IF_x_OR_POP opcodes to VM.
|
2013-11-09 20:12:32 +00:00 |
|
Damien
|
f3822fc34c
|
Fix but with optimised range being 1 over.
|
2013-11-09 20:12:03 +00:00 |
|
Damien
|
f72fd0e875
|
Add optimisation for "for x in range".
|
2013-11-06 20:20:49 +00:00 |
|
Damien
|
5bf32c3b6b
|
Built-in print function supports variable number of arguments.
|
2013-11-06 17:16:35 +00:00 |
|
Damien
|
ae0bc08a37
|
Viper supports inplace add (trivial).
|
2013-11-06 17:11:07 +00:00 |
|
Damien
|
40fdfe3000
|
Improve allocation of stack for byte code.
|
2013-11-05 22:16:22 +00:00 |
|
Damien
|
03c9cfb015
|
Make byte code jumps relative.
|
2013-11-05 22:06:08 +00:00 |
|
Damien
|
6addc89e55
|
Byte code for SMALL_INT uses 3 bytes for integer.
|
2013-11-04 23:04:50 +00:00 |
|
Damien
|
96a0addb18
|
Fixup include of stdarg and va_list definition.
|
2013-11-03 18:30:10 +00:00 |
|
Damien
|
2f06c57f8a
|
Add simple var-arg functions; add simple string.format.
|
2013-11-03 18:20:56 +00:00 |
|
Damien
|
33af3bf028
|
Change Py API names, py_get_* -> py_obj_get_*.
|
2013-11-03 14:39:47 +00:00 |
|
Damien
|
9b9e996df6
|
Support for for-loop in native thumb.
|
2013-11-03 14:25:43 +00:00 |
|
Damien
|
1a6633a74d
|
Implement more thumb branch instructions.
|
2013-11-03 13:58:19 +00:00 |
|
Damien
|
d57eba51e5
|
Add user object to runtime.
|
2013-11-02 23:58:14 +00:00 |
|
Damien
|
6ba1314265
|
Fix bug: emit native didn't clear last_was_return in label_assign.
|
2013-11-02 20:34:54 +00:00 |
|
Damien
|
7410e440ab
|
Add basic complex number support.
|
2013-11-02 19:47:57 +00:00 |
|
Damien
|
e0b1864337
|
Small hack to temporarily fix allocation of unique_code slots.
|
2013-11-02 16:41:24 +00:00 |
|
Damien
|
ccfc9c51ba
|
Py runtime: list.append returns None.
|
2013-11-02 15:10:37 +00:00 |
|
Damien
|
4ebb32fb95
|
Implement: str.join, more float support, ROT_TWO in VM.
|
2013-11-02 14:33:10 +00:00 |
|
Damien
|
2839168340
|
Add py_get_array_fixed_n function.
|
2013-10-25 00:40:38 +01:00 |
|
Damien
|
6f08f8ce51
|
Add working MMA support.
|
2013-10-23 22:17:26 +01:00 |
|
Damien
|
d2c1a732e5
|
Call gc_free in gc_realloc after allocating new block.
|
2013-10-23 21:03:27 +01:00 |
|
Damien
|
8b3a7c2237
|
Fix func decls with no arguments: () -> (void).
|
2013-10-23 20:20:17 +01:00 |
|
Damien
|
9fc7933ff2
|
Add py_get_qstr.
|
2013-10-23 00:01:10 +01:00 |
|
Damien
|
ec63cce470
|
Add simple support for C modules.
|
2013-10-22 22:58:17 +01:00 |
|
Damien
|
92c06561a3
|
Improve REPL compount statement detection.
|
2013-10-22 22:32:27 +01:00 |
|
Damien
|
bb5316b905
|
gc: reserve first block; lexer: free vstr.
|
2013-10-22 21:12:29 +01:00 |
|
Damien
|
fd8b6bcf55
|
Add gc_free function to force a block to be freed.
|
2013-10-22 20:26:36 +01:00 |
|
Damien
|
7b2d3f38ce
|
Implement some more operators, mostly for small ints.
|
2013-10-22 16:53:02 +01:00 |
|
Damien
|
f086ecf57c
|
Shrink py_obj_base_t size to 4 machine words.
|
2013-10-22 16:05:11 +01:00 |
|
Damien
|
eefcc79022
|
Clear ATBs on gc_init; better gc_info.
|
2013-10-22 15:25:25 +01:00 |
|