Commit Graph

70 Commits

Author SHA1 Message Date
Yuichi Nishiwaki bde09e063a add pic_acons function 2013-10-20 14:04:39 +09:00
Yuichi Nishiwaki 50b9c2bd97 add pair.h 2013-10-20 12:34:57 +09:00
Yuichi Nishiwaki bcde104dd1 cleanup 2013-10-20 04:18:52 +09:00
Yuichi Nishiwaki afc0184d10 extend default heap size 2013-10-20 04:04:06 +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 5e96d05fd1 insert OP_POP into sequential operation 2013-10-18 02:29:11 +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 1646de5e8d initial port commit 2013-10-17 22:42:47 +09:00
Yuichi Nishiwaki e87f632327 writer writes lists in short form 2013-10-17 22:42:20 +09:00
Yuichi Nishiwaki b58c6d1e8b remove test_object_creation from main.c 2013-10-17 21:00:54 +09:00
Yuichi Nishiwaki 1a6c8a3cca support multi-line input in REPL 2013-10-17 20:48:50 +09:00
Yuichi Nishiwaki 5671c43a77 do not abort when finding syntax error 2013-10-17 17:57:12 +09:00
Yuichi Nishiwaki d9e47bdd05 add begin syntax 2013-10-17 17:54:28 +09:00
Yuichi Nishiwaki 17f0c928da add readline support 2013-10-17 17:08:33 +09:00
Yuichi Nishiwaki 4e83ad4843 s/pic_instruction/pic_opcode/g 2013-10-17 14:18:32 +09:00
Yuichi Nishiwaki fc9e2401a3 add some comments on picconf.h 2013-10-17 13:55:00 +09:00
Yuichi Nishiwaki 7925f2b502 implement direct threading VM 2013-10-17 13:54:48 +09:00
Yuichi Nishiwaki 6c903db758 if syntax 2013-10-16 17:42:47 +09:00
Yuichi Nishiwaki 87dce75c78 add local variables 2013-10-16 17:20:53 +09:00
Yuichi Nishiwaki 5c8d81e8b5 support closure call 2013-10-16 15:30:52 +09:00
Yuichi Nishiwaki 9b7fdb0725 undef object must not appear in the user land 2013-10-16 13:24:08 +09:00
Yuichi Nishiwaki ff646e05dd support boolean values 2013-10-16 13:17:01 +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 19abedf746 warn when a closure is applied 2013-10-16 11:28:57 +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 ea6230e90c configurable stack size 2013-10-15 23:28:23 +09:00
Yuichi Nishiwaki 47971c1289 extend heap size 2013-10-15 23:27:26 +09:00
Yuichi Nishiwaki a93c3caabf move pic_env to proc.h 2013-10-15 21:53:45 +09:00
Yuichi Nishiwaki d40c8b5921 add cfunc_p flag to pic_proc 2013-10-15 21:52:14 +09:00
Yuichi Nishiwaki a5dcaba970 add support for arithmetic operations 2013-10-15 21:29:07 +09:00
Yuichi Nishiwaki af9dd45e65 change the type of immediate number value from int to double 2013-10-15 20:05:12 +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 8a5ea7d7dc implement OP_CALL 2013-10-15 19:18:33 +09:00
Yuichi Nishiwaki 6f80f9287b adjust heap/arena size 2013-10-15 19:12:17 +09:00
Yuichi Nishiwaki 6a10162c2c add picrin/proc.h 2013-10-15 13:21:40 +09:00
Yuichi Nishiwaki 5874b7a350 configurable heap/arena size 2013-10-15 13:20:45 +09:00
Yuichi Nishiwaki daece7ae67 add object creation debug flag to picconf 2013-10-15 09:14:34 +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 276e139ec6 fix bugs around GC 2013-10-14 18:21:56 +09:00
Yuichi Nishiwaki a5db43ba91 add object finalizer 2013-10-13 19:00:39 +09:00
Yuichi Nishiwaki dc2f25ef2a initial GC commit 2013-10-13 19:00:12 +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