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 |
|
Damien
|
dcced92c26
|
Add mark-sweep garbage collector.
|
2013-10-21 23:45:08 +01:00 |
|
Damien
|
fa2162bc77
|
Integrate new lexer stream with stm framework.
|
2013-10-20 17:42:00 +01:00 |
|
Damien
|
27fb45eb1c
|
Add local_num skeleton framework to deref/closure emit calls.
|
2013-10-20 15:07:49 +01:00 |
|
Damien
|
a5185f4bc8
|
Abstract out back-end stream functionality from lexer.
|
2013-10-20 14:41:27 +01:00 |
|
Damien
|
68f59a96e3
|
Add vstr and its functions.
|
2013-10-20 14:39:58 +01:00 |
|
Damien
|
df4b4f31ef
|
Make grammar rules const so the go in .text section.
|
2013-10-19 18:28:01 +01:00 |
|
Damien
|
4d7adce9c5
|
Remove obsolete emitthumb.c (now use emitnative.c).
|
2013-10-19 18:17:12 +01:00 |
|
Damien
|
1595f3257e
|
Make rt_fun_table const, so it goes in .text section.
|
2013-10-19 15:09:32 +01:00 |
|
Damien
|
5ac1b2efbd
|
Implement REPL.
|
2013-10-18 19:58:12 +01:00 |
|
Damien
|
7bbd110691
|
Remove line in emitbc.c to print code size.
|
2013-10-18 19:57:17 +01:00 |
|
Damien
|
3997be444c
|
Add single_input rule to grammar, for REPL.
|
2013-10-18 19:56:48 +01:00 |
|
Damien
|
9f770c658f
|
Fix up insertion of newline at end of lexer stream.
|
2013-10-18 19:54:31 +01:00 |
|
Damien
|
d2755ec538
|
Add iterators and comprehension to emitnative.
|
2013-10-16 23:58:48 +01:00 |
|
Damien
|
c12aa468a1
|
Add SET_ADD opcode to VM.
|
2013-10-16 20:57:49 +01:00 |
|
Damien
|
5fd09668b7
|
Add MAP_ADD opcode to VM.
|
2013-10-16 20:54:01 +01:00 |
|
Damien
|
bd25445a82
|
Implement BC & runtime support for generator/yielding.
|
2013-10-16 20:39:12 +01:00 |
|
Damien
|
c226dca1f7
|
Support tuples and list comprehension, albeit crude.
|
2013-10-16 16:12:52 +01:00 |
|
Damien
|
152568bcb6
|
NLR and Python exceptions work on the board.
|
2013-10-16 00:46:39 +01:00 |
|
Damien
|
c9f91976e1
|
Crude try-except working.
|
2013-10-15 23:46:01 +01:00 |
|
Damien
|
ce89a21ea4
|
Implement basic exception framework, and simple for loop.
|
2013-10-15 22:25:17 +01:00 |
|
Damien
|
3ef4abb446
|
Change ifdef/if defined to simple if's.
|
2013-10-12 16:53:13 +01:00 |
|