Yuichi Nishiwaki
7b251a7129
change record API; remove record-of? and add record-type
2014-08-06 11:30:14 +09:00
Yuito Murase
cd96014104
record-ref and record-set! don't check type
2014-08-04 12:45:11 +09:00
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
48003c2ce1
Merge branch 'update-xhash'
2014-08-01 18:52:31 +09:00
Yuichi Nishiwaki
fd6792b7e5
pic_sym should be an alias to int (for the convenience to use xhash for pic_sym)
2014-08-01 18:48:36 +09:00
Yuichi Nishiwaki
52aa837bea
support #!fold-case directive
2014-07-29 18:12:45 +09:00
Yuichi Nishiwaki
2f7f2a5b93
s/lib_tbl/libs/g
2014-07-29 16:22:55 +09:00
Yuichi Nishiwaki
38076e738e
lookup global variable by name
2014-07-29 16:09:04 +09:00
Yuichi Nishiwaki
07b201c830
undocument pic_defmacro
2014-07-28 00:41:20 +09:00
Yuichi Nishiwaki
e680b4a6bb
change deflibrary API
2014-07-27 14:47:14 +09:00
Yuichi Nishiwaki
09efa4715c
add another argument to eval
2014-07-27 13:23:59 +09:00
Yuichi Nishiwaki
5ba0c56308
add pic_ungensym
2014-07-26 14:04:34 +09:00
Yuichi Nishiwaki
50879dd7b6
Allocate pic_blocks in picrin's gc pool; reference count may cause problems
2014-07-25 14:41:56 +09:00
Yuichi Nishiwaki
0c8ef0bd32
hold destination stack locations by offset
2014-07-24 11:03:40 +09:00
Yuichi Nishiwaki
70ace29b7c
initial raise-continuable support
2014-07-24 11:02:47 +09:00
Yuichi Nishiwaki
3cb46b9b79
allocate jmpbuf array in heap
2014-07-24 11:02:47 +09:00
Yuichi Nishiwaki
424216ca23
manage converter in var
2014-07-23 09:11:31 +09:00
Yuichi Nishiwaki
f7bbe31ee5
change var API
2014-07-22 14:55:13 +09:00
Yuichi Nishiwaki
18b07fc853
change blob API
2014-07-22 13:55:21 +09:00
Yuichi Nishiwaki
3f6ec5f878
implement assoc and member in c
2014-07-22 13:19:25 +09:00
Yuichi Nishiwaki
72422343c0
s/lib->senv/lib->env/g
2014-07-20 15:30:48 +09:00
Yuichi Nishiwaki
7a2f8abd9c
rewrite let-syntax in scheme
2014-07-20 14:55:17 +09:00
Yuichi Nishiwaki
c43120077c
remove internal defmacro expander
2014-07-20 11:15:12 +09:00
Yuichi Nishiwaki
ad2434cde7
implement memv and assv with C
2014-07-19 12:51:19 +09:00
Yuichi Nishiwaki
a2c00017ea
implement memq and assq with c
2014-07-19 12:48:27 +09:00
Yuichi Nishiwaki
d6b6376408
add pic_senv_new
2014-07-19 01:42:06 +09:00
Yuichi Nishiwaki
baeb5f6174
s/senv->renames/senv->map/g
2014-07-19 01:42:06 +09:00
Yuichi Nishiwaki
a867991b7e
remove rLETREC_SYNTAX
2014-07-18 11:51:13 +09:00
Yuichi Nishiwaki
b50f5fc54f
remove sLETREC_SYNTAX
2014-07-18 11:50:08 +09:00
Yuichi Nishiwaki
32174d7855
remove box
2014-07-17 16:38:18 +09:00
Yuichi Nishiwaki
c601dbf27e
rename pic_proc_cv_ref to pic_attr_ref
2014-07-17 16:31:26 +09:00
Yuichi Nishiwaki
4714df48f0
s/pic_proc_attr/pic_attr/g
2014-07-17 16:28:36 +09:00
Yuichi Nishiwaki
cb3c4e8e22
remove use of pic_proc_cv_init
2014-07-17 16:26:15 +09:00
Yuichi Nishiwaki
98bb47dfb6
remove pic_papply
2014-07-17 16:24:47 +09:00
Yuichi Nishiwaki
6cc37281d6
remove pic_tt_sc type
2014-07-17 13:59:21 +09:00
Yuichi Nishiwaki
8781b9a6aa
publish pic_identifier_p and pic_identifier_eq_p
2014-07-17 13:58:45 +09:00
Yuichi Nishiwaki
5faa7cd46d
leave core syntax keywords renamed
2014-07-14 10:08:11 +09:00
Yuichi Nishiwaki
6c45bb3c5d
support let-syntax
2014-07-13 22:36:30 +09:00
Yuichi Nishiwaki
c57f8a5016
add pic_void macro
2014-07-13 20:20:04 +09:00
Yuichi Nishiwaki
54d50d57a1
add pic_dict_has
2014-07-13 19:49:24 +09:00
Yuichi Nishiwaki
b0474aaec2
add dictionary operators
2014-07-13 12:07:07 +09:00
Yuichi Nishiwaki
2c4fd589bf
manage values in a stack
2014-07-13 11:07:43 +09:00
Yuichi Nishiwaki
9e8d53088f
add pic_set_c[ad]r
2014-07-13 11:07:42 +09:00
Yuichi Nishiwaki
7ffcbb7a7d
refactor var. c api no longer supports converters.
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
13fec26c59
remove var accessor and mutators
2014-07-13 11:07:42 +09:00
Yuichi Nishiwaki
56ae4de826
add attribute information to closure objects
2014-07-13 10:58:21 +09:00
Yuichi Nishiwaki
82de3cfe2f
add pic_dict_new
2014-07-13 10:58:13 +09:00