Yuichi Nishiwaki
|
9cb28f3156
|
add OP_EQ/OP_LT/OP_LE
|
2013-10-24 21:10:13 +09:00 |
Yuichi Nishiwaki
|
d75b624b4a
|
add OP_LSET and OP_CSET
|
2013-10-24 03:14:32 +09:00 |
Yuichi Nishiwaki
|
ec0f0d3572
|
add pic_calloc
|
2013-10-24 00:32:03 +09:00 |
Yuichi Nishiwaki
|
035de0016b
|
evaluate arguments in normal (lexical) order
|
2013-10-23 15:55:42 +09:00 |
Yuichi Nishiwaki
|
dd7958c3d6
|
reader supports quasiquote abbrev
|
2013-10-23 12:39:48 +09:00 |
Yuichi Nishiwaki
|
dd3adf30e6
|
use xhash to manage scopes during codegin
|
2013-10-22 22:22:35 +09:00 |
Yuichi Nishiwaki
|
86177b7c4e
|
pic_get_args supports optional argument
|
2013-10-21 13:57:02 +09:00 |
Yuichi Nishiwaki
|
adab797391
|
add system.c
|
2013-10-21 11:51:02 +09:00 |
Yuichi Nishiwaki
|
ba78a00d5c
|
take care of escaped characters in string
|
2013-10-21 11:12:34 +09:00 |
Yuichi Nishiwaki
|
8f4788ca27
|
read strings
|
2013-10-21 10:48:03 +09:00 |
Yuichi Nishiwaki
|
a49675c322
|
add OP_PUSHCONST
|
2013-10-21 09:29:56 +09:00 |
Yuichi Nishiwaki
|
05eb62cc4d
|
do not abort when meet a compilation error
|
2013-10-20 18:17:12 +09:00 |
Yuichi Nishiwaki
|
4f8aa03b24
|
clarify the meanings of error functions
|
2013-10-20 17:41:48 +09:00 |
Yuichi Nishiwaki
|
7322271d65
|
intern symbols using hash table
|
2013-10-20 14:05:48 +09:00 |
Yuichi Nishiwaki
|
50b9c2bd97
|
add pair.h
|
2013-10-20 12:34:57 +09:00 |
Yuichi Nishiwaki
|
cfae6f3c59
|
add OP_NILP
|
2013-10-20 03:53:02 +09:00 |
Yuichi Nishiwaki
|
78f301794a
|
add OP_CAR/OP_CDR
|
2013-10-20 03:48:06 +09:00 |
Yuichi Nishiwaki
|
e7a5784fd7
|
allocate global variable entry area by malloc and save it into pic_state
|
2013-10-18 00:15:15 +09:00 |
Yuichi Nishiwaki
|
c92a672e01
|
change the stack layout: to hold proc object on the stack when procedure
call is invoked
|
2013-10-17 23:29:18 +09:00 |
Yuichi Nishiwaki
|
1a6c8a3cca
|
support multi-line input in REPL
|
2013-10-17 20:48:50 +09:00 |
Yuichi Nishiwaki
|
d9e47bdd05
|
add begin syntax
|
2013-10-17 17:54:28 +09:00 |
Yuichi Nishiwaki
|
6c903db758
|
if syntax
|
2013-10-16 17:42:47 +09:00 |
Yuichi Nishiwaki
|
5c8d81e8b5
|
support closure call
|
2013-10-16 15:30:52 +09:00 |
Yuichi Nishiwaki
|
f6eddbc6d3
|
save all ireps into pic_state
in order to decrease the stress GC will get, restore irep structures
under pic_state instead of under each procs and making it collectable object
|
2013-10-16 11:53:25 +09:00 |
Yuichi Nishiwaki
|
c593a46a62
|
add OP_LAMBDA (lambda object creation)
|
2013-10-16 11:32:30 +09:00 |
Yuichi Nishiwaki
|
b60e4df3d9
|
add pic_realloc
|
2013-10-16 11:21:41 +09:00 |
Yuichi Nishiwaki
|
22abdae12a
|
add callinfo
|
2013-10-15 23:29:34 +09:00 |
Yuichi Nishiwaki
|
a93c3caabf
|
move pic_env to proc.h
|
2013-10-15 21:53:45 +09:00 |
Yuichi Nishiwaki
|
a5dcaba970
|
add support for arithmetic operations
|
2013-10-15 21:29:07 +09:00 |
Yuichi Nishiwaki
|
02d52723ac
|
add some FFI functions such as pic_defun and pic_get_args
|
2013-10-15 19:19:34 +09:00 |
Yuichi Nishiwaki
|
5874b7a350
|
configurable heap/arena size
|
2013-10-15 13:20:45 +09:00 |
Yuichi Nishiwaki
|
60ed971dd9
|
add picconf.h
|
2013-10-15 09:05:44 +09:00 |
Yuichi Nishiwaki
|
42dbd5fe98
|
save some special symbols in pic_state structure
|
2013-10-14 18:28:52 +09:00 |
Yuichi Nishiwaki
|
a6f561d66e
|
change the type of argument pic_gc_protect accepts
|
2013-10-13 17:25:36 +09:00 |
Yuichi Nishiwaki
|
ee985a31cd
|
add GC arena
|
2013-10-13 17:02:29 +09:00 |
Yuichi Nishiwaki
|
a0556087f9
|
rename pic_gc_alloc to pic_obj_alloc
|
2013-10-13 16:55:07 +09:00 |
Yuichi Nishiwaki
|
1fb9ac5d03
|
let pic_proc be a first class object
|
2013-10-13 16:16:13 +09:00 |
Yuichi Nishiwaki
|
e3600a65c9
|
replace mock allocator with simple k&r malloc
|
2013-10-13 15:14:15 +09:00 |
Yuichi Nishiwaki
|
69e927d7bc
|
add pic_raise
|
2013-10-12 14:40:27 +09:00 |
Yuichi Nishiwaki
|
65c9843d83
|
add VM codegen
|
2013-10-12 12:53:54 +09:00 |
Yuichi Nishiwaki
|
1a45eab148
|
store stack base and end
|
2013-10-12 00:20:53 +09:00 |
Yuichi Nishiwaki
|
643d8be66d
|
first VM impl
|
2013-10-12 00:16:19 +09:00 |
Yuichi Nishiwaki
|
6b0c1aa668
|
first eval commit
|
2013-10-11 17:36:51 +09:00 |
Yuichi Nishiwaki
|
8533d7b87f
|
initial parser commit
|
2013-10-11 15:18:37 +09:00 |
Yuichi Nishiwaki
|
2a6978a3b9
|
fix bugs around compilation
|
2013-10-10 17:54:35 +09:00 |
Yuichi Nishiwaki
|
b640dc08e8
|
add pic_debug function
|
2013-10-10 17:48:01 +09:00 |
Yuichi Nishiwaki
|
0c382c2bdb
|
add pic_intern_cstr
|
2013-10-10 17:22:25 +09:00 |
Yuichi Nishiwaki
|
9038939bd1
|
add some pair functions
|
2013-10-10 17:06:26 +09:00 |
Yuichi Nishiwaki
|
97ba95e12f
|
add our own malloc implementation (just a mock for now)
|
2013-10-10 16:44:51 +09:00 |
Yuichi Nishiwaki
|
ebffe5a22e
|
decide value representation
|
2013-10-10 16:34:24 +09:00 |
Yuichi Nishiwaki
|
68a7420ba4
|
remove argument name from prototype
|
2013-10-10 16:19:10 +09:00 |
Yuichi Nishiwaki
|
25c9fef1d0
|
add pic_state structure
|
2013-10-10 16:15:41 +09:00 |