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