Yuichi Nishiwaki
9db8b33c61
abandon xhash
2015-06-25 07:58:58 +09:00
Yuichi Nishiwaki
42794ebbff
use khash for reader
2015-06-25 07:34:10 +09:00
Yuichi Nishiwaki
5cbb44d6b8
use khash for env
2015-06-25 07:26:48 +09:00
Yuichi Nishiwaki
d500dd5d76
don't use xhash in codegen
2015-06-25 07:19:11 +09:00
Yuichi Nishiwaki
11ed51b236
use khash for registers
2015-06-25 07:14:29 +09:00
Yuichi Nishiwaki
0fb87449fc
use khash for pic->syms
2015-06-25 07:05:41 +09:00
Yuichi Nishiwaki
03a649ed23
use khash in equal? impl
2015-06-25 06:44:45 +09:00
Yuichi Nishiwaki
d6edf41305
kh_resize operation never fail
2015-06-25 06:39:13 +09:00
Yuichi Nishiwaki
2e1280ce5c
don't use malloc/realloc/free in khash.h
2015-06-25 06:13:20 +09:00
Yuichi Nishiwaki
a7475a66fe
Merge branch 'master' into khash-kvec
2015-06-25 05:58:12 +09:00
Yuichi Nishiwaki
6b15304d85
[bugfix] ptable consists of registers
2015-06-25 05:56:47 +09:00
Yuichi Nishiwaki
5cf1822813
use khash for dictionary impl
2015-06-25 05:56:15 +09:00
Yuichi Nishiwaki
0daa4febb0
fix #270
2015-06-24 02:17:13 +09:00
Yuichi Nishiwaki
f5789c7c6f
added c functions to define private varaibles. see discussion on #271
2015-06-24 02:02:26 +09:00
Yuichi Nishiwaki
07fc2bb98e
cleanup
2015-06-24 01:13:18 +09:00
Yuichi Nishiwaki
f0434a8b37
abandon xvect.h, move on to kvec.h
2015-06-23 22:08:18 +09:00
Yuichi Nishiwaki
e2ad39074b
cleanup
2015-06-23 04:01:25 +09:00
Yuichi Nishiwaki
777ba0ff6a
[bugfix] don't compare continuation objects by pointers. They may be
...
reused when it reenters the same stack position.
2015-06-23 03:14:00 +09:00
Yuichi Nishiwaki
aae1b8792a
remove struct pic_picjmp
2015-06-23 03:14:00 +09:00
Yuichi Nishiwaki
aa79797334
fix #234
2015-06-22 17:41:17 +09:00
Yuichi Nishiwaki
e730a314f4
[bugfix] memory leak of pic_checkpoint
2015-06-22 17:12:19 +09:00
Yuichi Nishiwaki
a0323bd5fc
print error irritants
2015-06-20 02:34:00 +09:00
Yuichi Nishiwaki
535cd0c21e
don't reformat error message because it removes trace info
2015-06-20 02:32:25 +09:00
Yuichi Nishiwaki
ad6833ac79
fix #230
2015-06-19 23:34:12 +09:00
Yuichi Nishiwaki
32653df178
cleanup
2015-06-19 21:21:04 +09:00
Yuichi Nishiwaki
7ec81ab1d5
add pic_resolve
2015-06-19 17:31:47 +09:00
Yuichi Nishiwaki
3021e7f2b9
add PIC_ENABLE_STDIO flag
2015-06-19 14:03:52 +09:00
Yuichi Nishiwaki
20cb77bbbe
file.h is now stdio.h-free
2015-06-19 05:14:18 +09:00
Yuichi Nishiwaki
a0d6c5800c
add pic_open_file
2015-06-19 05:00:36 +09:00
Yuichi Nishiwaki
cf037f27db
remove library-name
2015-06-19 03:31:24 +09:00
Yuichi Nishiwaki
4bc765da65
move include of gc.h
2015-06-19 03:27:03 +09:00
Yuichi Nishiwaki
19c09ba643
move contents of util.h to compat.h
2015-06-19 03:23:07 +09:00
Yuichi Nishiwaki
10f81512d8
don't malloc pic_reader
2015-06-19 03:14:55 +09:00
Yuichi Nishiwaki
db0767c931
don't malloc pic->iseq
2015-06-19 03:10:11 +09:00
Yuichi Nishiwaki
78bd3047f8
don't use global mutable variable!
2015-06-19 03:06:57 +09:00
Yuichi Nishiwaki
e43a9c7881
pass pic_state object to vtable functions
2015-06-19 02:29:17 +09:00
Yuichi Nishiwaki
3df7d1dd71
use pic_malloc and pic_free in file.c
2015-06-19 02:05:56 +09:00
Yuichi Nishiwaki
2e59b6ab04
rename xfile.[ch] to file.[ch]
2015-06-19 01:11:04 +09:00
Yuichi Nishiwaki
d1aa42cd7a
[bugfix] double close should be safe
2015-06-19 01:04:04 +09:00
Yuichi Nishiwaki
f2e6feea7f
assert value bound to current-(input|output|error)-port is port
2015-06-19 00:02:24 +09:00
Yuichi Nishiwaki
0b66447e79
remove port->status property
2015-06-18 23:26:31 +09:00
Yuichi Nishiwaki
b4c3e2cc4f
small refactoring. use DEFINE_STANDARD_PORT_ACCESSOR macro to define pic_stdxx
2015-06-18 23:15:09 +09:00
Yuichi Nishiwaki
61ff69b968
remove pic->xSTDXX
2015-06-18 22:59:22 +09:00
Yuichi Nishiwaki
1d1210db09
cleanup lib.c
2015-06-17 01:52:20 +09:00
Yuichi Nishiwaki
29a966d678
define export in scheme
2015-06-17 01:44:11 +09:00
Yuichi Nishiwaki
52b03d928c
define import in scheme
2015-06-17 00:59:19 +09:00
Yuichi Nishiwaki
fa1c619633
define define-library and cond-expand in scheme
2015-06-17 00:14:12 +09:00
Yuichi Nishiwaki
63d3510de8
move features procedure defun to state.c benz
2015-06-17 00:13:00 +09:00
Yuichi Nishiwaki
62b7c1a0f9
warn macro redefinition only when transformer object slot is being overwritten
2015-06-17 00:11:02 +09:00
Yuichi Nishiwaki
490c97cd81
add library-name and current-library
2015-06-17 00:03:52 +09:00
Yuichi Nishiwaki
4f69cb8ec3
eval procedure now takes environment object for the second argument
2015-06-16 22:51:49 +09:00
Yuichi Nishiwaki
eef74604d0
add library operators
2015-06-16 22:51:05 +09:00
Yuichi Nishiwaki
a88b5e193f
remove #. reader
2015-06-16 21:39:41 +09:00
Yuichi Nishiwaki
7dd0e01b70
support (equal? identifier1 identifier2)
2015-06-16 21:13:41 +09:00
Yuichi Nishiwaki
cf66d600bb
move macroexpander to codegen.c
2015-06-16 21:01:46 +09:00
Yuichi Nishiwaki
85e8d1511b
remove defer property from pic_env
...
explicitly pass deferred lambda list to expand functions
2015-06-16 20:57:18 +09:00
Yuichi Nishiwaki
2e5b66fabd
s/macroexpand/expand/g
2015-06-16 20:27:58 +09:00
Yuichi Nishiwaki
2c269b4f0e
syntax-quote and syntax-quasiquote should create identifiers at runtime,
...
not at compile time
2015-06-16 19:16:23 +09:00
Yuichi Nishiwaki
84a3eaee35
change eval interface: eval takes an expression and an environment
...
macroexpand should be done in the context in which the expansion is
running. As of now I only changed c interface of eval but should change
the scheme interface as well ASAP.
2015-06-16 19:16:06 +09:00
Yuichi Nishiwaki
a10ac3b770
rewrite boot.c. add syntax-quote family
...
[boot.c] (cond) should be expanded into #undefined
update boot.c
[boot.c] bugfix
boot.c bugfix
2015-06-15 02:52:37 +09:00
Yuichi Nishiwaki
25c0eb125e
add identifier-variable and identifier-environment
2015-06-15 02:52:37 +09:00
Yuichi Nishiwaki
181d120f09
reader support of (#' #` #, #,@)
2015-06-15 02:52:37 +09:00
Yuichi Nishiwaki
6d80b58060
assume all symbols are bound at the toplevel
2015-06-15 02:52:36 +09:00
Yuichi Nishiwaki
3a59a95960
[WIP] replace macro expander
...
remove define-syntax, add define-macro instead
saner display when writing identifiers
2015-06-15 02:48:31 +09:00
Yuichi Nishiwaki
454146ab52
s/rXXX/uXXX/g
2015-06-15 02:30:05 +09:00
Yuichi Nishiwaki
015971ffc4
remove define-record-writer
2015-06-15 02:25:09 +09:00
Yuichi Nishiwaki
6c1abe32fe
s/registry/register/g
2015-06-15 02:17:27 +09:00
OGINO Masanori
2816f206fb
Define GCC_VERSION in util.h temporarily.
...
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2015-06-12 18:59:59 +09:00
Yuichi Nishiwaki
483edb5708
flush all xFILEs at exit
2015-06-10 22:37:05 +09:00
Yuichi Nishiwaki
191d3067f8
Revert "Revert "remove in-library""
...
This reverts commit 77d3b0b41e
.
2015-06-09 23:02:06 +09:00
Yuichi Nishiwaki
2b1fa0692d
fix debug print
2015-06-09 22:49:49 +09:00
Yuichi Nishiwaki
cf411fd62a
lazy export
2015-06-09 22:36:04 +09:00
Yuichi Nishiwaki
98857c0726
change pic_find_rename interface
2015-06-09 22:26:21 +09:00
Yuichi Nishiwaki
6af9a3ee7d
remove pic_warn
2015-06-09 22:13:46 +09:00
Yuichi Nishiwaki
30cbdd5c4f
cleanup macro.h
2015-06-09 20:20:56 +09:00
Yuichi Nishiwaki
6af60c9e2b
don't use static non-const local variable
2015-06-09 19:19:27 +09:00
Yuichi Nishiwaki
44887cdd0c
add make-registry procedure
2015-06-09 18:50:46 +09:00
Yuichi Nishiwaki
b983c77767
use registries for parameter table
2015-06-09 18:36:39 +09:00
Yuichi Nishiwaki
111779c39e
add pic_reg
2015-06-09 18:31:46 +09:00
Yuichi Nishiwaki
448bbf679d
change dictionary interface.
...
use #undefined object as sentinel
2015-06-09 17:06:19 +09:00
Yuichi Nishiwaki
5185a73cd2
replace none with undef
2015-06-09 16:34:45 +09:00
Yuichi Nishiwaki
084d39cd9e
let undefined be public API
2015-06-09 16:19:57 +09:00
Yuichi Nishiwaki
2c9a19acf5
introduce pic_invalid_value
2015-06-09 16:02:23 +09:00
Yuichi Nishiwaki
df56a8c154
cleanup
2015-06-08 22:41:43 +09:00
Yuichi Nishiwaki
53a9e72413
optimize var implementation
2015-06-08 22:28:17 +09:00
Yuichi Nishiwaki
5def1df320
s/pic_winder/pic_checkpoint/g
2015-06-08 21:04:04 +09:00
Yuichi Nishiwaki
77d3b0b41e
Revert "remove in-library"
...
This reverts commit 8604e18719
.
2015-06-06 13:48:31 +09:00
Yuichi Nishiwaki
8604e18719
remove in-library
2015-06-04 14:17:37 +09:00
Yuichi Nishiwaki
531187bb2a
speed up bytecode compilation
2015-06-04 13:53:41 +09:00
Yuichi Nishiwaki
72baa9a52d
remove pic_throw function
2015-06-04 13:23:20 +09:00
Yuichi Nishiwaki
34b6585287
cleanup
2015-06-02 07:57:52 +09:00
Yuichi Nishiwaki
8f891c00c6
fix build
2015-06-02 07:20:47 +09:00
Yuichi Nishiwaki
9573c6db65
use proc_env in callcc implementation
2015-06-02 06:54:39 +09:00
Yuichi Nishiwaki
0ea80d1f34
use proc_env in var implementation
2015-06-02 06:53:16 +09:00
Yuichi Nishiwaki
fc957da920
add 'env' property to struct pic_proc
...
Using attribute to make closure from c function is unsafe because closed
variables are visible from the scheme world. Use env property instead
from now.
2015-06-02 06:53:16 +09:00
Yuichi Nishiwaki
ce0c737c95
cleanup
2015-06-02 06:53:16 +09:00
Yuichi Nishiwaki
88092044d7
shrink pic_proc size
2015-06-02 06:53:16 +09:00
Yuichi Nishiwaki
1fb918743a
rename variables
2015-06-02 06:32:43 +09:00
Yuichi Nishiwaki
5df4e4f64e
rename functions related to continuation
2015-06-02 06:18:09 +09:00
Yuichi Nishiwaki
dbcd81c8c1
[bugfix] calling dead escape continuation causes segv
2015-06-02 06:01:16 +09:00
Yuichi Nishiwaki
1e3bb6f1bb
cleanup pic_push_try
2015-06-02 05:14:43 +09:00
Yuichi Nishiwaki
e0c837baee
don't do pop_try in pic_raise
2015-06-02 05:00:17 +09:00
Sunrim KIM (keen)
6e9024b237
don't pass NULL to memcpy
2015-05-31 21:26:06 +09:00
Sunrim KIM (keen)
7b26e6cefe
Merge branch 'master' of github.com:picrin-scheme/picrin
2015-05-31 14:25:22 +09:00
Yuichi Nishiwaki
15e61d8cd4
pic_open_library -> pic_make_library
2015-05-31 00:25:40 +09:00
Sunrim KIM (keen)
221f089716
remove prototype declaration of function macro
2015-05-30 23:45:54 +09:00
Yuichi Nishiwaki
599d8f5980
pic_senv -> pic_env
2015-05-30 22:39:03 +09:00
Yuichi Nishiwaki
d0e10b49a7
pic_env -> pic_context
2015-05-30 22:34:51 +09:00
Yuichi Nishiwaki
617de67b94
cleanup
2015-05-30 20:05:04 +09:00
Yuichi Nishiwaki
334ceb9e7c
fix bugs unveiled by the previous commit
2015-05-30 19:57:32 +09:00
Yuichi Nishiwaki
9b7eb2f996
unify all headers into picrin.h
2015-05-28 23:57:10 +09:00
Yuichi Nishiwaki
fa8226e581
[bugfix] pic_debug broken in debug build
2015-05-28 23:30:55 +09:00
Yuichi Nishiwaki
00cde353ba
xfile completely refactored
2015-05-28 23:28:55 +09:00
Yuichi Nishiwaki
329251d984
embed chunk buffer into pic_chunk
2015-05-28 17:29:13 +09:00
Yuichi Nishiwaki
e30f1a11dc
more strict unused variable check
2015-05-28 17:06:41 +09:00
Yuichi Nishiwaki
d11da3a400
move complex macros from picrin.h to util.h
2015-05-28 16:54:36 +09:00
Yuichi Nishiwaki
6a692541a6
s/pic_alloc/pic_malloc/g
2015-05-28 16:42:16 +09:00
Yuichi Nishiwaki
278075910a
custom allocator and custom abort
2015-05-28 02:12:26 +09:00
Yuichi Nishiwaki
271898ae78
don't use xmopen
2015-05-28 01:58:22 +09:00
Yuichi Nishiwaki
304664eaf0
add libc fallback
2015-05-28 01:55:55 +09:00
Yuichi Nishiwaki
7dcd050e1a
add PIC_ENABLE_FLOAT and PIC_WORD_BOXING
2015-05-28 01:48:38 +09:00
Yuichi Nishiwaki
4bdb17db2f
style fix
2015-05-28 01:06:44 +09:00
Yuichi Nishiwaki
b9dde91123
allow custom setjmp/longjmp
2015-05-28 00:41:55 +09:00
Yuichi Nishiwaki
bb55bbfdde
[bugfix] codegen causes segv when default irep size is short
2015-05-28 00:21:49 +09:00
Yuichi Nishiwaki
9885bdd982
explicit cast to size_t
2015-05-28 00:17:12 +09:00
Yuichi Nishiwaki
7923f947d7
don't use xstd** from benz
2015-05-28 00:14:10 +09:00
Yuichi Nishiwaki
1fe960716e
[bugfix] too long fraction causes overflow
2015-05-28 00:02:24 +09:00
Yuichi Nishiwaki
4cd8dcab60
refactor number reader
2015-05-27 23:40:01 +09:00
Yuichi Nishiwaki
15449354c6
switch string implementation to picrin's
2015-05-27 23:34:40 +09:00
Yuichi Nishiwaki
6d5ef7bda5
more error handling at pic_open
2015-05-27 23:08:47 +09:00
Yuichi Nishiwaki
53dadede15
[bugfix] gc bug
2015-05-27 23:01:35 +09:00
Yuichi Nishiwaki
2bfb6876eb
don't use bit field
2015-05-27 22:49:29 +09:00
Yuichi Nishiwaki
81be1b9e3e
define pic_dump_irep only if DEBUG is defined
2015-05-27 22:10:51 +09:00
Yuichi Nishiwaki
3bc0be34ac
remove trailing comma
2015-05-27 22:08:44 +09:00
Syohei YOSHIDA
919675670f
Correct cast type
2015-05-22 14:59:01 +09:00
Sunrin SHIMURA (keen)
a8520fe595
number->string: remove trailing 0s
2015-05-11 16:26:55 +09:00
Yuichi Nishiwaki
e7946902c1
Merge pull request #258 from picrin-scheme/issue-257
...
Issue 257
2015-02-05 16:52:35 +09:00
Sunrin SHIMURA (keen)
dfd6e453f3
remove unneeded argc initialization
2015-02-05 05:51:39 +00:00
Sunrin SHIMURA (keen)
32831c11e0
fix #257
2015-02-04 14:05:34 +00:00
Sunrin SHIMURA (keen)
06a2b09e69
display proc name in error message raised from `pic_get_args`
2015-02-04 13:46:29 +00:00
Sunrin SHIMURA (keen)
65967f2e05
fix a bug
2015-02-03 17:19:17 +00:00
Sunrin SHIMURA (keen)
1700610729
rewrite to be clean
2015-02-03 16:57:39 +00:00
Sunrin SHIMURA (keen)
9571030f7e
Merge branch 'master' into better-error-message2
...
Conflicts:
extlib/benz/vm.c
2015-02-02 18:32:20 +00:00
Sunrin SHIMURA (keen)
e2f10ba3ad
rewrite pic_get_args to check nparams first
2015-02-02 18:30:14 +00:00
Sunrin SHIMURA (keen)
8a7f61bf01
use correct vars
2015-02-01 12:25:48 +00:00
Yuichi Nishiwaki
8e65a9db56
split cstrings every 80 line
2015-01-31 21:14:53 +09:00
Yuichi Nishiwaki
70b2c23ff7
don't use variable-length arrays
2015-01-28 00:56:45 +09:00
Yuichi Nishiwaki
fc6e724e8e
don't use long long
2015-01-28 00:53:28 +09:00
Yuichi Nishiwaki
154d987294
don't use C99's designated initializer
2015-01-28 00:46:51 +09:00
Yuichi Nishiwaki
6af010f26d
SIZE_MAX is not defined in ISO C89
2015-01-28 00:40:39 +09:00
Yuichi Nishiwaki
32d6760d4f
portable xprintf implementation
2015-01-28 00:28:54 +09:00
Yuichi Nishiwaki
e4248584b6
remove variable-length arrays in string.c
2015-01-27 23:58:03 +09:00
Sunrin SHIMURA (keen)
40dc4a0e9c
Merge branch 'better-error-message2' of github.com:picrin-scheme/picrin into better-error-message2
2015-01-27 09:44:06 +00:00
Sunrin SHIMURA (keen)
df0b61ed92
Merge branch 'master' into better-error-message2
2015-01-27 09:36:15 +00:00
Yuichi Nishiwaki
914c295177
don't use variable length array
2015-01-27 13:54:41 +09:00
Yuichi Nishiwaki
de294b0784
dont use loop initial declaration
2015-01-26 23:55:28 +09:00
Yuichi Nishiwaki
03a4f1a871
don't use flexible array member
2015-01-26 23:07:27 +09:00
Yuichi Nishiwaki
c1d4ea9d00
remove trailing comma
2015-01-26 23:06:52 +09:00
Yuichi Nishiwaki
9968b15264
change PIC_NAN_BOXING enabling condition
2015-01-26 22:55:59 +09:00
Yuichi Nishiwaki
0b67ec47f3
don't use indirect gotos in strict mode
2015-01-26 22:50:44 +09:00
Yuichi Nishiwaki
be29b69c0c
don't require c99
2015-01-26 22:50:38 +09:00
Yuichi Nishiwaki
b2a539fb69
update error message
2015-01-26 15:25:40 +09:00
Yuichi Nishiwaki
9417b45005
[bugfix] pic_load_point must store escape->results
2015-01-26 15:10:26 +09:00
Yuichi Nishiwaki
303041abc5
fix degade
2015-01-26 14:33:48 +09:00
Yuichi Nishiwaki
336fc21761
merge init.c into state.c
2015-01-26 14:31:36 +09:00
Yuichi Nishiwaki
f96579805c
reserve square brackets
2015-01-26 12:29:29 +09:00
Yuichi Nishiwaki
1e8f49872e
s/pic_noreturn/PIC_NORETURN/g
2015-01-26 12:22:38 +09:00
Yuichi Nishiwaki
d390fc44ca
add PIC_INLINE macro
2015-01-26 12:20:32 +09:00
Yuichi Nishiwaki
6bdfac4ec0
don't declare variables in middle of block
2015-01-26 11:42:24 +09:00
Yuichi Nishiwaki
f7d506cd35
xvect.h is now based on kvec.h
2015-01-25 20:44:36 +09:00
Yuichi Nishiwaki
9af074d803
remove trailing commas
2015-01-25 20:44:36 +09:00
Yuichi Nishiwaki
499b68c835
change pic_dict_for_each interface
2015-01-25 20:44:35 +09:00
Yuichi Nishiwaki
e3833eb039
change pic_for_each interface
2015-01-25 20:44:35 +09:00
Yuichi Nishiwaki
1b637d1763
refactor pic_deflibrary macro. don't declare variables in for statements
2015-01-25 20:44:35 +09:00
Sunrin SHIMURA (keen)
6ee0fd2852
change error message according to discussion
2015-01-25 06:37:09 +00:00
Yuichi Nishiwaki
1417513805
remove trailing comma
2015-01-22 17:34:23 +09:00
Yuichi Nishiwaki
3d1098967c
use pic_alloc/pic_free in initializing struct pic_reader
2015-01-22 17:18:38 +09:00
Yuichi Nishiwaki
42cc5042f3
use pic_alloc/pic_free in initializing struct pic_heap
2015-01-22 17:08:41 +09:00
Yuichi Nishiwaki
8c67ad863b
stop using trie tree-based reader table
2015-01-22 16:53:11 +09:00
Yuichi Nishiwaki
1ff8672a11
add PIC_SYMS_SIZE constant
2015-01-21 21:59:50 +09:00
Sunrin SHIMURA (keen)
794ab892c5
show callee, expected argc and actual argc
2015-01-20 15:00:41 +00:00
Sunrin SHIMURA (keen)
fd762b8edd
improve erroro message for call-with-values
2015-01-20 14:57:59 +00:00
Sunrin SHIMURA (keen)
f783640240
improve error message for arith op
2015-01-20 14:57:59 +00:00
Yuichi Nishiwaki
06c998e0b2
add symbol gc
2015-01-20 17:50:31 +09:00
Yuichi Nishiwaki
129bae29f2
Merge pull request #245 from picrin-scheme/heap-symbol
...
Let symbols to be allocated in heap
2015-01-20 17:42:01 +09:00
Yuichi Nishiwaki
1270787344
[bugfix] build failure in debug mode
2015-01-20 16:02:44 +09:00
Yuichi Nishiwaki
6e6e1de7a5
pic_sym is not a pointer
2015-01-20 16:02:28 +09:00
Yuichi Nishiwaki
2d1ddb9a5a
s/pic_sym/pic_sym_ptr/g
2015-01-20 15:31:17 +09:00
Yuichi Nishiwaki
c5f711ddd6
[bugfix] irep->name is missed to mark
2015-01-20 02:51:51 +09:00
Yuichi Nishiwaki
914242a531
[bugfix] wrong type specified for cxt->syms
2015-01-20 02:51:10 +09:00
Sunrin SHIMURA (keen)
6dbf52812d
better error messages against invalid use of auxiliary syntax
2015-01-19 06:02:39 +00:00
Yuichi Nishiwaki
7964c4f5bb
mark only interned symbols and some specisl uninterned symbols
2015-01-19 14:41:27 +09:00
Yuichi Nishiwaki
b9df96499d
move symbol constants to pic_state
2015-01-19 14:37:47 +09:00
Yuichi Nishiwaki
772a5ceae5
[bugfix] pic_intern must count up reference of the return value
2015-01-19 14:37:47 +09:00
Yuichi Nishiwaki
44ff702e60
rename internal object
2015-01-19 14:37:46 +09:00
Yuichi Nishiwaki
ffa27e4b11
s/SYMBOL_P/SYMBOLP/g, s/PAIR_P/PAIRP/g
2015-01-19 14:37:46 +09:00
Yuichi Nishiwaki
ce3cf1741d
improve error message
2015-01-19 14:37:46 +09:00
Yuichi Nishiwaki
3b3032ee55
don't malloc in pic_interned_p
2015-01-19 13:12:04 +09:00
Yuichi Nishiwaki
ca69048513
turn on GC
2015-01-19 12:14:46 +09:00
Yuichi Nishiwaki
ccc7a2beed
add gc on/off flag
2015-01-19 12:14:29 +09:00
Yuichi Nishiwaki
3fc49b59be
move symbol-related macros to symbol.h
2015-01-19 11:11:19 +09:00
Yuichi Nishiwaki
fa1b681eba
remove pic_sym_value
2015-01-19 11:08:27 +09:00
Yuichi Nishiwaki
f349e4148e
remove pic_symbol_value
2015-01-19 11:02:22 +09:00
Yuichi Nishiwaki
fc654dd280
heap symbol seems working (with GC stopped)
2015-01-19 11:00:23 +09:00
Yuichi Nishiwaki
4be979b1df
change pic_intern interface
2015-01-19 02:21:10 +09:00
Yuichi Nishiwaki
09cb576a3b
remove pic_ungensym
2015-01-19 01:55:39 +09:00
Yuichi Nishiwaki
1b510e982e
add irep->syms
2015-01-19 01:29:00 +09:00
Yuichi Nishiwaki
cabae2767b
use dictionary for senv->map
2015-01-18 21:58:40 +09:00
Yuichi Nishiwaki
c1bba1ec83
use dictionaries for temporary import table
2015-01-18 21:55:17 +09:00
Yuichi Nishiwaki
14a93ccf0f
use dictionary for rec->data
2015-01-18 21:40:14 +09:00
Yuichi Nishiwaki
c86e97094d
use dictionary for lib->exports
2015-01-18 21:35:57 +09:00
Yuichi Nishiwaki
9209722a5b
use dictionaries for pic->globals and pic->macros
2015-01-18 21:25:34 +09:00
Yuichi Nishiwaki
a3db19c1bf
remove 'struct pic_macro'. define-syntax spec is changed.
2015-01-18 15:49:28 +09:00
Yuichi Nishiwaki
f2eb51e53d
some procedures are moved to contrib/
...
system related procedures are moved to contrib/
file related procedures are moved to contrib/
load related procedures are moved to conrib/
2015-01-18 01:03:29 +09:00
Yuichi Nishiwaki
4cc423d815
gather all includes of standard headers into picrin.h
2015-01-18 00:17:37 +09:00
Yuichi Nishiwaki
cbed7c4ba5
add dictionary-map and dictionary-for-each
2015-01-17 23:26:35 +09:00
Yuichi Nishiwaki
6968c85282
revert 48f0ec90
. dicitonary is now symbol-to-object structure
2015-01-17 21:03:08 +09:00
Yuichi Nishiwaki
3e9da6d3e3
[prepare] dictionary is to be changed to have only symbols for its keys
2015-01-17 21:01:13 +09:00
Yuichi Nishiwaki
2652d9724d
Merge commit '536d59c7d4799208aed63309556d86bb92521470'
2015-01-17 18:36:23 +09:00
Yuichi Nishiwaki
506595a559
Merge pull request #233 from KeenS/restore-config
...
restore tuned config
2015-01-12 20:56:19 +09:00
Sunrin SHIMURA (keen)
51acf8ac54
optimize `equal?`. Don't initialize xhash until it is really needed.
...
`make test-r7rs` gets 12s -> 9.5s, in which `equal?` is heavilly used.
2015-01-12 11:40:33 +00:00
Yuichi Nishiwaki
9303fcf34b
safer names for utility macros
2015-01-07 13:11:48 -08:00
Sunrin SHIMURA (keen)
6f1b54f4f3
Merge commit '2440372c16fd1e479ad8aa346f6006dbf795a74c' into restore-config
2015-01-04 04:59:42 +00:00
Sunrin SHIMURA (keen)
814425508f
Add 'extlib/benz/' from commit '569b1ace02e6a066b21f94dff23c4e01b8748bf0'
...
git-subtree-dir: extlib/benz
git-subtree-mainline: 3c3d9f4c27
git-subtree-split: 569b1ace02
2015-01-03 06:31:37 +00:00
Sunrin SHIMURA (keen)
3c3d9f4c27
rm benz subtree
2015-01-03 06:31:15 +00:00
Sunrim KIM (keen)
221f3bdebd
add regression test against benz/#55
2014-11-09 17:09:06 +09:00
Sunrim KIM (keen)
7c9d12769e
Revert "update betz (to implement pickle) and add its test"
...
This reverts commit ae450b95b9
.
2014-10-29 17:34:12 +09:00
Sunrim KIM (keen)
ae450b95b9
update betz (to implement pickle) and add its test
2014-10-04 06:00:03 +09:00
Yuichi Nishiwaki
fc873c5559
update benz (suppress more warnings)
2014-09-27 08:30:57 -07:00
Yuichi Nishiwaki
c4c87abe1a
update benz (remove type-punning)
2014-09-27 08:20:56 -07:00
Yuichi Nishiwaki
b7fca32f61
update benz (improve compliance)
2014-09-27 21:32:10 +09:00
Yuichi Nishiwaki
7fddb356d3
update benz
2014-09-26 16:34:49 +09:00
Yuichi Nishiwaki
9d694ac5ae
generalized attribute
2014-09-25 19:12:56 +09:00
Yuichi Nishiwaki
cc45ffadc3
update benz. pic_try was broken
2014-09-24 20:39:22 +09:00
Yuichi Nishiwaki
cc502cadef
remove dictoinary-for-each and dictionary-map
2014-09-21 16:28:01 +09:00
Yuichi Nishiwaki
6556a2ec1d
spill out mutable-string nitro
2014-09-21 15:34:14 +09:00
Yuichi Nishiwaki
38a1f92abd
add callcc nitro.
2014-09-20 20:31:42 +09:00
Yuichi Nishiwaki
8f7a0d9e45
update benz
2014-09-20 11:50:07 +09:00
Yuichi Nishiwaki
9b226afd1f
move {vector,string}-{map,for-each}
2014-09-19 18:21:28 +09:00
Yuichi Nishiwaki
d8cbcde157
improve error handling mechanism
2014-09-19 17:15:27 +09:00
Yuichi Nishiwaki
f0ed3b655a
custom marker
2014-09-17 13:00:51 +09:00
Yuichi Nishiwaki
6fdf082bdd
update benz (exception API refactoring)
2014-09-17 00:51:01 +09:00
Yuichi Nishiwaki
1388887754
update benz (ordered map)
2014-09-16 22:41:33 +09:00
Yuichi Nishiwaki
8d7f63d71e
update benz (funcall API change)
2014-09-16 16:47:04 +09:00
Yuichi Nishiwaki
1e29ad51a0
update benz. (parameterize, object dictionary)
2014-09-15 16:00:19 +09:00
Yuichi Nishiwaki
b9707debaf
update benz
2014-09-13 18:55:16 +09:00
Yuichi Nishiwaki
c82c23b93d
dictionary-delete -> dictionary-delete!
2014-09-13 16:54:41 +09:00
Yuichi Nishiwaki
ecdc6ffd66
update benz (dictionary-api)
2014-09-13 16:52:42 +09:00
Yuichi Nishiwaki
22a04a59a2
update benz (conversion functions)
2014-09-12 21:21:29 +09:00
Yuichi Nishiwaki
b84004770a
update benz (new->make)
2014-09-12 20:02:41 +09:00
Yuichi Nishiwaki
8117a95b0d
update benz. define `include' in scheme/base.scm
2014-09-12 18:54:12 +09:00
Yuichi Nishiwaki
96609de180
string conversion functions
2014-09-10 20:10:09 +09:00
Yuichi Nishiwaki
65a1b0f5af
update benz (features)
2014-09-10 18:37:08 +09:00
Yuichi Nishiwaki
0dbf238f83
update benz (call-with-port)
2014-09-10 17:43:19 +09:00
Yuichi Nishiwaki
9f5a1512b5
char comparators moved to benz core
2014-09-10 17:18:41 +09:00
Yuichi Nishiwaki
e5d47de3b0
update benz. support inter-referntial definitions
2014-09-10 15:27:46 +09:00
Yuichi Nishiwaki
bd68a94af5
update benz
2014-09-10 03:09:41 +09:00
Yuichi Nishiwaki
4be04205ae
update benz
2014-09-10 02:10:41 +09:00
Yuichi Nishiwaki
a871f1b89d
update benz (xfile)
2014-09-09 14:47:16 +09:00
Yuichi Nishiwaki
64d7861bf3
bytevector-copy is missed. added port-open?c
2014-09-09 02:14:48 +09:00
Yuichi Nishiwaki
6020e2e71d
update benz (bugs in define-values)
2014-09-09 01:48:12 +09:00
Yuichi Nishiwaki
9ab446ab92
support strings
2014-09-09 01:28:08 +09:00
Yuichi Nishiwaki
27322a3c80
update benz (_ and ...)
2014-09-09 00:59:12 +09:00
Yuichi Nishiwaki
0c6ffa3e7b
update benz (pic_open)
2014-09-09 00:09:31 +09:00
Yuichi Nishiwaki
230c87d455
update benz (boot.c)
2014-09-08 23:55:47 +09:00
Yuichi Nishiwaki
1ac0ccb05e
change dictionary interface
2014-09-08 20:49:28 +09:00
Yuichi Nishiwaki
8b9a3f513a
update benz
2014-09-08 20:45:34 +09:00
Yuichi Nishiwaki
3919c17fdc
WIP
2014-09-08 20:20:08 +09:00
Yuichi Nishiwaki
c15999cc76
update benz
2014-09-08 17:08:38 +09:00
Yuichi Nishiwaki
42ddd5793e
update benz
2014-09-04 18:43:53 +09:00
Yuichi Nishiwaki
758c607046
delete old submodules
2014-09-01 09:11:45 +09:00
Yuichi Nishiwaki
4ff302bfcf
add benz submodule
2014-09-01 09:08:48 +09:00
Yuichi Nishiwaki
055a288199
update xhash
2014-08-01 18:48:02 +09:00
Sunrim KIM on Raspberry Pi
704b896ba8
update xfile
2014-07-27 18:20:12 +09:00
Yuichi Nishiwaki
4501b9bd93
update xrope
2014-06-27 17:35:00 +09:00
Yuichi Nishiwaki
3f2a0d2160
update xfile
2014-06-25 21:41:57 +09:00
Yuichi Nishiwaki
72db056f1e
update xfile
2014-06-25 17:24:33 +09:00
Yuichi Nishiwaki
08f0fbd3d3
[experimental] update xfile
2014-06-25 16:10:08 +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
cbcbd9e6c4
update xfile. close #80 .
2014-04-01 00:34:07 +09:00
Yuichi Nishiwaki
7bac84afec
update xhash
2014-03-25 15:29:09 +09:00
Yuichi Nishiwaki
cfde253f26
split xvect module
2014-03-20 23:09:45 +09:00
Yuichi Nishiwaki
07cdd24fe1
update xrope
2014-03-06 22:19:35 +09:00
Yuichi Nishiwaki
b0787f40c3
update xrope
2014-03-02 19:24:58 +09:00
Yuichi Nishiwaki
d427e06831
update xrope
2014-02-27 19:41:47 +09:00
Yuichi Nishiwaki
62670addb5
add xrope
2014-02-27 19:18:19 +09:00
Yuichi Nishiwaki
bb93a8be14
catch up to XFILE changes
2014-02-25 21:07:32 +09:00
Yuichi Nishiwaki
c2ed86751b
update xhash
2014-02-25 21:04:47 +09:00
Yuichi Nishiwaki
5f427374d3
update xhash
2014-02-24 16:07:13 +09:00
Yuichi Nishiwaki
b18e348b37
update xfile
2014-02-21 02:21:33 +09:00
Yuichi Nishiwaki
ca5bdb35e8
update xfile again
2014-02-21 01:38:02 +09:00
Yuichi Nishiwaki
49857ad56a
update xfile
2014-02-21 01:31:21 +09:00
Yuichi Nishiwaki
b1ae0cb14d
update xfile
2014-02-21 01:25:57 +09:00
Yuichi Nishiwaki
b8b5ba7fe7
update xfile
2014-02-18 19:18:09 +09:00
Yuichi Nishiwaki
e9ec125b0c
update xhash
2014-02-18 04:16:40 +09:00
Yuichi Nishiwaki
37acda07cd
update xhash
2014-02-12 11:36:20 +09:00
Yuichi Nishiwaki
89b2f7bbab
update xfile
2014-02-09 00:13:24 +09:00
Yuichi Nishiwaki
383026a64e
update xfile
2014-02-08 22:30:37 +09:00
Yuichi Nishiwaki
812e595472
update submodule
2014-02-08 17:07:52 +09:00