Commit Graph

145 Commits

Author SHA1 Message Date
Yuichi Nishiwaki 0b58624864 no need to handle set!/if/begin syntaces at macroexpansion stage 2014-03-29 09:00:37 +09:00
Yuichi Nishiwaki c5d9972d2e macro transformer should never return macro objects 2014-03-29 08:57:15 +09:00
Yuichi Nishiwaki 464ecdd452 call symbol_rename as much as possible 2014-03-29 08:53:24 +09:00
Yuichi Nishiwaki b7d8a2c724 record cfunc procedure names 2014-03-28 12:18:32 +09:00
Yuichi Nishiwaki c10f40acd4 change pic_find_rename API 2014-03-27 16:19:55 +09:00
Yuichi Nishiwaki 6ea78fbf27 delete pic_apply_argv 2014-03-25 21:04:30 +09:00
Yuichi Nishiwaki 4b13848cbc separate macroexpansion and arena management 2014-03-25 15:42:20 +09:00
Yuichi Nishiwaki ca42b44921 update xhash uses 2014-03-25 15:29:26 +09:00
Yuichi Nishiwaki 8d63fffe87 don't create duplicate slots 2014-03-25 14:25:48 +09:00
Yuichi Nishiwaki 88a7d1f2b9 s/senv->name/senv->renames/g 2014-03-25 14:21:23 +09:00
Yuichi Nishiwaki b757368748 add renamer APIs 2014-03-25 14:12:53 +09:00
Yuichi Nishiwaki 514937662e renamed symbols must be always greater than or equal to 0 2014-03-25 13:26:42 +09:00
Yuichi Nishiwaki bccfc1f08d throw error when macro definition evaluates to non-procedure object 2014-03-24 15:30:44 +09:00
Yuichi Nishiwaki b61da9bc47 use UNREACHABLE macro 2014-03-24 15:30:32 +09:00
Yuichi Nishiwaki b29832d2c5 refactor macroexpand 2014-03-24 15:27:03 +09:00
Yuichi Nishiwaki daa7513be5 add pic_throw function 2014-03-24 14:09:28 +09:00
Yuichi Nishiwaki 136980ae2e rewrite define-library expander with pic_try/catch 2014-03-24 13:25:37 +09:00
koba-e964 30cc6998de [bugfix] macroexpand
macroexpand restores pic->lib in the case of an error
2014-03-23 20:58:28 +09:00
Yuichi Nishiwaki f8b3f5f1fd don't rename unbound symbols 2014-03-04 00:45:47 +09:00
Yuichi Nishiwaki 5b2898ae5c rename read functions which return a list of multiple expressions to 'parse' 2014-03-04 00:26:33 +09:00
Yuichi Nishiwaki c357a9302d remove pic_list, and add pic_listn 2014-03-01 20:46:08 +09:00
Yuichi Nishiwaki 6e7567a598 my own read impl. 2014-03-01 20:21:44 +09:00
Yuichi Nishiwaki 8586dc9057 xrope is now the internal representation of pic_str 2014-02-27 21:54:37 +09:00
Yuichi Nishiwaki 56f5f4a1f5 move sturct definitions for basic types to type-specific headers respectively 2014-02-22 15:21:55 +09:00
Yuichi Nishiwaki 16639a1764 fix #56. thank you @justinethier 2014-02-20 11:58:27 +09:00
Yuichi Nishiwaki c4473335b4 add macroexpand function. close #46. 2014-02-15 13:02:06 +09:00
Yuichi Nishiwaki 64cdd5f152 cleanup 2014-02-13 15:01:01 +09:00
Yuichi Nishiwaki f9046cc614 improve export error message 2014-02-13 15:00:48 +09:00
Yuichi Nishiwaki ac136bbc2e add gensym function 2014-02-13 14:59:51 +09:00
Yuichi Nishiwaki f32754c0f9 place define-macro syntax in (picrin macro) library 2014-02-13 14:59:17 +09:00
Yuichi Nishiwaki a5f93fbd30 Merge remote-tracking branch 'refs/remotes/origin/master' 2014-02-13 13:49:46 +09:00
Yuichi Nishiwaki aa48198270 cosmetic changes 2014-02-13 13:44:30 +09:00
Yuichi Nishiwaki 6c849bbac9 defsyntax functon no longer used 2014-02-13 13:42:17 +09:00
Yuichi Nishiwaki a16eee7e1e improve hygiene on define-macro 2014-02-13 13:26:32 +09:00
Yuichi Nishiwaki 907a6a1207 save memory consumption in macroexpand_list 2014-02-12 23:25:37 +09:00
Yuichi Nishiwaki 234c573bb6 add another debug print 2014-02-12 22:30:46 +09:00
Yuichi Nishiwaki edc91bd588 remove unneeded include 2014-02-12 21:50:28 +09:00
Yuichi Nishiwaki 910e006dc3 resolve symbols bound by define-syntax 2014-02-12 21:49:28 +09:00
Yuichi Nishiwaki 03ef82fd16 defmacro takes a symbol for the name 2014-02-12 11:32:17 +09:00
Yuichi Nishiwaki b24e1b05c4 cleanup 2014-02-12 11:30:32 +09:00
Yuichi Nishiwaki a40c79116f use symbol_rename function in macro transformers 2014-02-12 11:20:38 +09:00
Yuichi Nishiwaki 098d5dc022 s/syntax/macro/g 2014-02-12 11:13:29 +09:00
Yuichi Nishiwaki 8ea3a7b544 rename a property of pic_syntax s/macro/proc/g 2014-02-12 11:05:32 +09:00
Yuichi Nishiwaki 6b69e8e74b stx->sym property is no longer used 2014-02-12 11:02:59 +09:00
Yuichi Nishiwaki 3d97e7f749 syntax_new is a private API 2014-02-12 10:59:10 +09:00
Yuichi Nishiwaki 25ae2ef6b0 add identifier_eq_p 2014-02-12 10:57:58 +09:00
Yuichi Nishiwaki 93a259870c replace pic_syntax_new with pic_syntax_new_macro 2014-02-12 10:52:33 +09:00
Yuichi Nishiwaki a18fe136e1 cosmetic fixes 2014-02-12 10:50:26 +09:00
Yuichi Nishiwaki c759fee566 add new_senv 2014-02-12 10:48:44 +09:00
Yuichi Nishiwaki 9cf7d72e82 inline-expand a small function 2014-02-12 10:42:17 +09:00