Commit Graph

1147 Commits

Author SHA1 Message Date
Yuichi Nishiwaki ae3164643e [bugfix] let may take an identifier as a loop name 2013-12-10 03:10:42 -08:00
Yuichi Nishiwaki 79f6f5c034 rewrite core syntaces with explicit renaming macro 2013-12-10 03:09:27 -08:00
Yuichi Nishiwaki fb34b71de1 [bugfix] identifier=? dies when take auxiliary syntax (because they emit
errors during expansion)
2013-12-10 01:50:53 -08:00
Yuichi Nishiwaki 41ffd0d7e5 define macro primitives (such as make-syntactic-closure) in (picrin macro) 2013-12-10 01:49:48 -08:00
Yuichi Nishiwaki fad425fcb9 export core syntaces from (scheme base) 2013-12-10 01:49:07 -08:00
Yuichi Nishiwaki 7cdd997f34 define 'case' syntax in (pircin core-syntax) library 2013-12-10 01:48:53 -08:00
Yuichi Nishiwaki fd8c551159 use print_code for CODE_EXECUTE_HOOK 2013-12-10 01:47:45 -08:00
Yuichi Nishiwaki e021ac52ac identifier=? dons not necessarily take identifiers 2013-12-10 00:22:34 -08:00
Yuichi Nishiwaki 7520de3dcd cosmetic changes 2013-12-10 00:21:43 -08:00
Yuichi Nishiwaki 49c0330fb7 declare core syntaces individually separate from (scheme base) 2013-12-09 23:00:47 -08:00
Yuichi Nishiwaki 038020ff9f sequentially evaluate programs declared in library at the macroexpansion phase 2013-12-09 23:00:13 -08:00
Yuichi Nishiwaki bae4e6974b [bugfix] create a new senv before allocate a library 2013-12-09 22:59:27 -08:00
Yuichi Nishiwaki 738fd549d8 add more auxiliary syntaces 2013-12-09 10:01:09 -08:00
Yuichi Nishiwaki ea7dc37dbc reorder and cleanup built-in libraries 2013-12-09 10:00:33 -08:00
Yuichi Nishiwaki a35434461d move functions related to hygienic macros to the top 2013-12-09 09:47:15 -08:00
Yuichi Nishiwaki 761cef4efb do not use let syntax in the definition of ir-macro-transformer 2013-12-09 09:44:11 -08:00
Yuichi Nishiwaki 51657e9412 remove walk function's support for vector for a moment 2013-12-09 09:43:20 -08:00
Yuichi Nishiwaki fdf06d591c remove 'else' 2013-12-09 09:34:32 -08:00
Yuichi Nishiwaki 74feec78f1 always emit the same unique symbol for unbound variable 2013-12-09 09:32:30 -08:00
Yuichi Nishiwaki b231d63297 [bugfix] avoid auxiliary keywords such as unquote or unquote-splicing
from being renamed
2013-12-09 09:27:28 -08:00
Yuichi Nishiwaki 725297384a define-syntax is now capable of takeing a synclo object at the position
of the syntax name
2013-12-09 09:26:28 -08:00
Yuichi Nishiwaki d871c6f06c import and export take multiple spec in a time 2013-12-09 09:22:38 -08:00
Yuichi Nishiwaki 39b28fa674 debug print might cause segv 2013-12-09 09:09:24 -08:00
Yuichi Nishiwaki eeb09f336e Merge branch 'master' into libraries
Conflicts:
	src/macro.c
	src/pair.c
2013-12-09 08:27:29 -08:00
Yuichi Nishiwaki e05a469a06 fix ir-macro-transformer 2013-12-09 07:27:11 -08:00
Yuichi Nishiwaki 0dddddab55 ir-macro-transformer was broken 2013-12-09 07:26:51 -08:00
Yuichi Nishiwaki 1ad4c309f4 [bugfix] case and or should be declared by ir-macro-transformer 2013-12-09 15:41:57 +09:00
Yuichi Nishiwaki daae383938 add hygienic `or` syntax 2013-12-09 15:37:29 +09:00
Yuichi Nishiwaki 3c6fd93b5a add hygienic `case` syntax 2013-12-09 15:37:21 +09:00
Yuichi Nishiwaki 80aed24fd7 add yet another debug print 2013-12-09 15:36:41 +09:00
Yuichi Nishiwaki 22e43c385e update README 2013-12-09 13:51:52 +09:00
Yuichi Nishiwaki d21db9ae81 execute winded handlers when exit is called 2013-12-09 13:51:34 +09:00
Yuichi Nishiwaki 5035831d84 [bugfix] syntax objects should be brought to imported library's
senv->stx holder
2013-12-08 00:52:34 -08:00
Yuichi Nishiwaki dda8ad367c split built-in functins into libraries 2013-12-07 23:17:28 -08:00
Yuichi Nishiwaki 906f2c8a93 make-library returns existing library if name conflicts 2013-12-07 23:15:16 -08:00
Yuichi Nishiwaki fabe70aaf2 [bugfix] assq and assoc should return false if key is not found 2013-12-07 23:13:45 -08:00
Yuichi Nishiwaki bea04325e5 define arithmetic operators as c functions 2013-12-07 20:55:04 -08:00
Yuichi Nishiwaki 8720ffa0c5 s/DEFINE_MATH_PRED/DEFINE_ARITH_CMP/g 2013-12-07 20:55:04 -08:00
Yuichi Nishiwaki 617ee5aa68 add pic_parse 2013-12-07 20:54:23 -08:00
Yuichi Nishiwaki a83627ef9c update submodules 2013-12-07 20:54:23 -08:00
Yuichi Nishiwaki 2f68113980 s/PICCONF/config/g 2013-12-07 20:52:58 -08:00
Yuichi Nishiwaki 24a41d8e27 add pic_assoc 2013-12-07 20:52:58 -08:00
Yuichi Nishiwaki 28da6d71ba add pic_equal_p 2013-12-07 20:52:58 -08:00
Yuichi Nishiwaki fb2e7ac498 declare all built-in functions and variables in (scheme base) library 2013-12-07 20:48:24 -08:00
Yuichi Nishiwaki 47dd186535 do not include core syntaces in the default library environment 2013-12-07 20:47:55 -08:00
Yuichi Nishiwaki 7f5a4c34a3 register and export to library functions defined by pic_defun 2013-12-07 20:47:09 -08:00
Yuichi Nishiwaki e71c5abfdb rename unbound symbols by default 2013-12-07 20:45:47 -08:00
Yuichi Nishiwaki 01e60b5d8e add pic_export and pic_export_as 2013-12-07 20:44:39 -08:00
Yuichi Nishiwaki 0110370cc4 improve reusability 2013-12-07 20:43:57 -08:00
Yuichi Nishiwaki 57ca3174aa define arithmetic operators as c functions 2013-12-07 20:43:36 -08:00