Yuito Murase
fa0de0c3fa
Merge remote-tracking branch 'upstream/master' into native-record
...
Conflicts:
include/picrin/value.h
piclib/prelude.scm
src/codegen.c
src/gc.c
src/init.c
src/macro.c
src/vm.c
src/write.c
2014-08-03 15:48:24 +09:00
Yuito Murase
c76dfcb861
implement native record
...
native record primitives are defined in (picrin record-primitive)
- (make-record rectype)
- (record-of? record rectype)
- (record-ref record rectype field-name)
- (record-set! record rectype field-name value)
define-record-type is defined using these primitives
2014-08-03 15:30:48 +09:00
Yuichi Nishiwaki
f26def254d
remove commented function
2014-07-29 16:10:31 +09:00
Yuichi Nishiwaki
1ae29c8449
inline global_ref and global_def.
2014-07-29 16:09:04 +09:00
Yuichi Nishiwaki
38076e738e
lookup global variable by name
2014-07-29 16:09:04 +09:00
Yuichi Nishiwaki
730a827d0e
fix vm_tear_off is broken
2014-07-27 18:29:59 +09:00
Yuichi Nishiwaki
e258529e8a
primary eval support
2014-07-27 13:41:55 +09:00
Yuichi Nishiwaki
09efa4715c
add another argument to eval
2014-07-27 13:23:59 +09:00
Yuichi Nishiwaki
f176fadb89
tear off on longjmp
2014-07-24 11:03:40 +09:00
Yuichi Nishiwaki
01c657ddba
[bugfix] pic_get_args supports 'e' specifier
2014-07-24 11:02:47 +09:00
Yuichi Nishiwaki
e3887691d2
applicable var
2014-07-23 09:05:35 +09:00
Yuichi Nishiwaki
72422343c0
s/lib->senv/lib->env/g
2014-07-20 15:30:48 +09:00
Yuichi Nishiwaki
b68813823f
improve pic_get_args error message
2014-07-17 11:30:44 +09:00
Yuichi Nishiwaki
c3106a9608
improve error message
2014-07-13 11:07:42 +09:00
Yuichi Nishiwaki
05309a1d38
don't use pic_defvar
2014-07-13 11:07:42 +09:00
Yuichi Nishiwaki
fe375a7224
add pic_funcall
2014-07-13 11:07:42 +09:00
Yuichi Nishiwaki
4c78e0694a
shrink trampoline iseq
2014-06-23 00:56:43 +09:00
Yuichi Nishiwaki
fa179dc152
trampoline_iseq is no longer mutable
2014-06-23 00:54:11 +09:00
Yuichi Nishiwaki
711b53eb72
fix #140
2014-06-23 00:52:36 +09:00
Yuichi Nishiwaki
da553b9001
primary symbol to object hashtable support (dictionary)
2014-06-14 22:17:57 +09:00
Yuichi Nishiwaki
f9e733a7b1
update xhash
2014-06-14 20:59:31 +09:00
Yuichi Nishiwaki
77cb18bfd4
add commentary on pic_get_args
2014-06-14 16:08:12 +09:00
Yuichi Nishiwaki
2155a0c8f1
declare arena_idx as a size_t
2014-05-26 16:06:41 +09:00
Yuichi Nishiwaki
cf1e1a8746
add pic_proc_name
2014-03-28 12:34:54 +09:00
Yuichi Nishiwaki
a304feaa28
show irep names in debug print
2014-03-28 12:29:00 +09:00
Yuichi Nishiwaki
aeaf33ff47
print cfunction name in debug print
2014-03-28 12:18:32 +09:00
Yuichi Nishiwaki
b7d8a2c724
record cfunc procedure names
2014-03-28 12:18:32 +09:00
Yuichi Nishiwaki
c10f40acd4
change pic_find_rename API
2014-03-27 16:19:55 +09:00
Yuichi Nishiwaki
6ea78fbf27
delete pic_apply_argv
2014-03-25 21:04:30 +09:00
Yuichi Nishiwaki
e51f0d6dc3
add arity-fixed apply functions
2014-03-25 20:54:57 +09:00
Yuichi Nishiwaki
ca42b44921
update xhash uses
2014-03-25 15:29:26 +09:00
Yuichi Nishiwaki
b757368748
add renamer APIs
2014-03-25 14:12:53 +09:00
Yuichi Nishiwaki
9dcdc45ab6
cleanup
2014-03-24 15:15:08 +09:00
Yuichi Nishiwaki
f2717910d0
remove error handling stuff from the VM
2014-03-24 15:12:01 +09:00
Yuichi Nishiwaki
daa7513be5
add pic_throw function
2014-03-24 14:09:28 +09:00
Yuichi Nishiwaki
12728df36f
perform tear-off operation lazily
2014-03-23 13:09:35 +09:00
Yuichi Nishiwaki
93414fac52
s/env.values/env.regs/g
2014-03-23 12:45:36 +09:00
Yuichi Nishiwaki
c9eb612561
do variable closing operation not in OP_CALL but in OP_RET
2014-03-23 12:10:34 +09:00
Yuichi Nishiwaki
12852b0628
s/cv_num/capturec/g
2014-03-22 19:13:07 +09:00
Yuichi Nishiwaki
510af57ce5
explict type cast for return valus from pic_*allloc family is not mandatory
2014-03-22 18:29:14 +09:00
Yuichi Nishiwaki
a9e98b1c31
small CSE optimize for irep
2014-03-22 18:23:33 +09:00
Yuichi Nishiwaki
5776940420
POPN macro was not used
2014-03-19 19:49:09 +09:00
Yuichi Nishiwaki
bc602aa767
pic_state is not used in pic_dump_*
2014-03-19 19:44:45 +09:00
Yuichi Nishiwaki
e80c3cc60b
move irep dump function definitions to irep.h
2014-03-19 19:41:24 +09:00
Yuichi Nishiwaki
fc5ea838ab
move global variable accessor/mutator definitions to vm.c
2014-03-19 19:38:40 +09:00
Yuichi Nishiwaki
04375c3056
[bugfix] propagate errors through the VM
2014-03-16 23:32:28 +09:00
Yuichi Nishiwaki
8598042deb
pic_list_p don't need to take pic_state *.
2014-03-16 23:12:07 +09:00
Yuichi Nishiwaki
751d0f87f8
typedef struct pic_code pic_code
2014-03-07 22:06:43 +09:00
Yuichi Nishiwaki
306a5f53a5
string formatter follow srfi-28's spec
2014-03-03 22:44:38 +09:00
Yuichi Nishiwaki
408255381c
add pic_eval
2014-03-03 22:39:38 +09:00