Commit Graph

249 Commits

Author SHA1 Message Date
Yuichi Nishiwaki 5b7f5ad1f9 Squashed 'extlib/benz/' changes from 414f790..057b5f2
057b5f2 Merge pull request #245 from picrin-scheme/heap-symbol
c91f6cd [bugfix] build failure in debug mode
b1849c4 pic_sym is not a pointer
e353b07 s/pic_sym/pic_sym_ptr/g
a11fb91 [bugfix] irep->name is missed to mark
1820a25 [bugfix] wrong type specified for cxt->syms
b8d2b8e better error messages against invalid use of auxiliary syntax
d9ade33 mark only interned symbols and some specisl uninterned symbols
da2217b move symbol constants to pic_state
78b035b [bugfix] pic_intern must count up reference of the return value
bbdc663 rename internal object
ba01821 s/SYMBOL_P/SYMBOLP/g, s/PAIR_P/PAIRP/g
1af32d1 improve error message
dd09fbf don't malloc in pic_interned_p
7f51070 turn on GC
7460e81 add gc on/off flag
f3742db move symbol-related macros to symbol.h
ded6759 remove pic_sym_value
ec97d07 remove pic_symbol_value
28bd059 heap symbol seems working (with GC stopped)
e0d6fe9 change pic_intern interface
6750693 remove pic_ungensym
4ea7d3c add irep->syms
ede7a99 use dictionary for senv->map
b3cb50c use dictionaries for temporary import table
fc698b5 use dictionary for rec->data
1b814d4 use dictionary for lib->exports
7ae1af4 use dictionaries for pic->globals and pic->macros
74f9979 remove 'struct pic_macro'. define-syntax spec is changed.
86136c5 some procedures are moved to contrib/
da99761 gather all includes of standard headers into picrin.h
7df8d77 add dictionary-map and dictionary-for-each
b625ff8 revert 48f0ec90. dicitonary is now symbol-to-object structure
f7657d7 [prepare] dictionary is to be changed to have only symbols for its keys

git-subtree-dir: extlib/benz
git-subtree-split: 057b5f29110ab3f75513573d291ea18acb782357
2015-01-20 17:44:06 +09:00
Yuichi Nishiwaki 536d59c7d4 Squashed 'extlib/benz/' changes from 569b1ac..414f790
414f790 Merge pull request #54 from KeenS/add-ops
f0ffe28 Merge pull request #53 from KeenS/compact-gc-header
17e1ad1 Merge pull request #233 from KeenS/restore-config
311fb62 optimize `equal?`. Don't initialize xhash until it is really needed.
c611258 safer names for utility macros
e7dc381 Merge commit '2440372c16fd1e479ad8aa346f6006dbf795a74c' into restore-config
99de906 rm miscommitted file
b85a3b7 (ref #50) add OP_SYMBOL_P and OP_PAIR_P
8048008 reduce gc header alignment for performance (both speed and space)

git-subtree-dir: extlib/benz
git-subtree-split: 414f790eef76a6a48e8100a162f6fdc8648e7513
2015-01-17 18:36:23 +09:00
Léon van Velzen 569b1ace02 change %a to %f in number->string 2014-11-07 19:24:47 +01:00
Yuichi Nishiwaki 15889a5feb [boot.c] commentify scheme code (as c code) 2014-09-27 08:29:55 -07:00
Yuichi Nishiwaki ed1a9aa717 mark popped but not used value as 'unused' 2014-09-27 08:25:11 -07:00
Yuichi Nishiwaki 7502ff4cb7 remove unused variable 2014-09-27 08:22:03 -07:00
Yuichi Nishiwaki 458511e231 update xhash.h (remove unsafe type-punning) 2014-09-27 08:18:43 -07:00
Yuichi Nishiwaki a22eef1060 fix comments 2014-09-27 21:29:09 +09:00
Yuichi Nishiwaki ad04bfb9fb Merge branch 'iso-c-compliance' 2014-09-27 20:44:08 +09:00
Yuichi Nishiwaki 1b37102676 suppress warning in compiling read.c 2014-09-27 20:43:31 +09:00
Yuichi Nishiwaki 0403ca5570 more fixes 2014-09-27 20:21:54 +09:00
Yuichi Nishiwaki 186c468c16 revert: argc must be size_t type 2014-09-27 20:17:02 +09:00
Yuichi Nishiwaki c808b34a67 refactor map and for-each 2014-09-27 20:15:47 +09:00
Yuichi Nishiwaki 552ee7444f more fix 2014-09-27 19:58:04 +09:00
Yuichi Nishiwaki d165b6ea6f avoid explicit casts if possible (small refacotring on dict.c, system.c) 2014-09-27 19:49:32 +09:00
Yuichi Nishiwaki 7f68fd3e2a use k format specifier in port.c 2014-09-27 19:48:58 +09:00
Yuichi Nishiwaki cf9d48a865 add pic_size_value 2014-09-27 19:48:49 +09:00
Yuichi Nishiwaki b3def908b6 use k format specifier in string.c 2014-09-27 18:48:20 +09:00
Yuichi Nishiwaki de51c22134 use k format specifier in pair.c 2014-09-27 18:16:27 +09:00
Yuichi Nishiwaki d34cbccf12 use k format specifier in vector.c 2014-09-27 18:12:05 +09:00
Yuichi Nishiwaki 8bdf623054 use k format specifier in blob.c 2014-09-27 17:52:56 +09:00
Yuichi Nishiwaki bfc45a228b add 'k' specifier to pic_get_args format 2014-09-27 17:47:47 +09:00
Yuichi Nishiwaki 4ac6c2b7ab refine description of pic_get_args 2014-09-27 17:33:49 +09:00
Yuichi Nishiwaki 186bad0503 pair functions must use size_t for index, not int 2014-09-27 17:19:16 +09:00
Yuichi Nishiwaki 7350f7e71e int to size_t conversion 2014-09-27 17:18:11 +09:00
Yuichi Nishiwaki f8a32d7d60 use ptrdiff to extend exception handler stack 2014-09-26 23:26:16 +09:00
Yuichi Nishiwaki 9906865932 explicit int to size_t cast 2014-09-26 23:24:17 +09:00
Yuichi Nishiwaki 36328c154b more fix on misc functions in vm.c 2014-09-26 17:39:11 +09:00
Yuichi Nishiwaki 5cfa89ba23 starndard style initializer 2014-09-26 17:38:58 +09:00
Yuichi Nishiwaki 490472af2f resolve VM's varaible shadows 2014-09-26 17:38:46 +09:00
Yuichi Nishiwaki 315c17c8d4 move stack overflow checker 2014-09-26 17:36:27 +09:00
Yuichi Nishiwaki cb54f0e065 int and size_t 2014-09-26 17:36:11 +09:00
Yuichi Nishiwaki 7b0ec3adde adjustment. amending for argc type change 2014-09-26 17:13:17 +09:00
Yuichi Nishiwaki 7ab9708ed0 passing array with a pair of int and pic_value * 2014-09-26 17:09:52 +09:00
Yuichi Nishiwaki a75ff9f2b0 argc should be int 2014-09-26 17:04:20 +09:00
Yuichi Nishiwaki de362c8f37 strict error check on vector manipulation 2014-09-26 16:47:23 +09:00
Yuichi Nishiwaki 5748cec548 Merge branch 'iso-c-compliance' 2014-09-26 16:34:10 +09:00
Yuichi Nishiwaki 0a23eb4f11 change int to size_t 2014-09-26 16:33:46 +09:00
Yuichi Nishiwaki f214cbf974 refactor dict.c stritc type casts 2014-09-26 16:27:19 +09:00
Yuichi Nishiwaki 68a900ee94 refactor port.c. strict type casts. 2014-09-26 16:13:53 +09:00
Yuichi Nishiwaki 136680e8d2 supporess maybe-uninitialized warning 2014-09-26 15:59:28 +09:00
Yuichi Nishiwaki 781bd19d89 clock_t can be cast to int type 2014-09-26 15:14:43 +09:00
Yuichi Nishiwaki 4e5e3f4fae return value from pic_get_args is of int type 2014-09-26 15:14:30 +09:00
Yuichi Nishiwaki 71f67cf771 simplify some mathematical functions implementations 2014-09-26 15:11:36 +09:00
Yuichi Nishiwaki d58e7d470f pic_sym is now just an alias of int 2014-09-26 14:42:50 +09:00
Yuichi Nishiwaki f8e9091774 internal representation of floating point number is not float type but double 2014-09-26 14:38:05 +09:00
Yuichi Nishiwaki 44133ce693 remove redundant semicolon 2014-09-26 14:35:05 +09:00
Yuichi Nishiwaki 96d31446bd arena_idx in struct pic_cont did not match its type with pic_state's one 2014-09-26 14:33:58 +09:00
Yuichi Nishiwaki 32fa44db91 integer->char: assure given integer range 2014-09-26 14:23:47 +09:00
Yuichi Nishiwaki ed354867a9 suppress warnings of implicit size_t <-> int conversion (blob.c) 2014-09-26 14:13:17 +09:00