Commit graph

650 commits

Author SHA1 Message Date
Justin Ethier
7b441dcfcf Change rename env to a local instead of a global 2016-09-21 17:25:36 -04:00
Justin Ethier
5f93f3e9cb Allow (macro:add-renamed-vars!) to mutate env 2016-09-22 03:44:29 -04:00
Justin Ethier
6ca3b7fca7 Staging changes to use a rename tbl instead of glo 2016-09-20 18:55:12 -04:00
Justin Ethier
796d5f9e0a Get macros to work by adding a rename env
Each macro will use its own use environment to rename macros, but a common environment will be used by all macro expansions (and after the last expansion) to map any renamed free variables back to the expected symbol.
2016-09-20 17:32:26 -04:00
Justin Ethier
d7bd650cfd Fix how lambda vars are added to bound var list 2016-09-21 02:12:23 -04:00
Justin Ethier
e49efe4394 Enable variable renaming 2016-09-20 04:11:14 -04:00
Justin Ethier
49235c0a82 Handle null during cleanup 2016-09-20 04:09:53 -04:00
Justin Ethier
bccbef125b Fix call to lambda->exp 2016-09-20 02:46:49 -04:00
Justin Ethier
5a0d619e38 Added debugging 2016-09-18 17:20:12 -04:00
Justin Ethier
3e5dae998b Fixup Cyc-er-compare 2016-09-18 16:50:44 -04:00
Justin Ethier
2e35a84a68 WIP 2016-09-17 18:02:49 -04:00
Justin Ethier
9555c48850 Check if renamed symbol is a bound variable 2016-09-17 17:23:26 -04:00
Justin Ethier
d2019bb284 WIP 2016-09-16 19:19:25 -04:00
Justin Ethier
f51a680eef Add macro:clean 2016-09-16 18:19:50 -04:00
Justin Ethier
4f99b8b629 Relocated (lambda->exp) 2016-09-16 17:51:48 -04:00
Justin Ethier
df7640777f Migrate functions 2016-09-16 17:35:07 -04:00
Justin Ethier
c1393acf91 Added functions to be migrated here 2016-09-17 03:08:57 -04:00
Justin Ethier
c4829df732 WIP 2016-09-17 02:57:50 -04:00
Justin Ethier
a2aa1fe9a3 Added (env:all-values env) 2016-09-17 00:57:49 -04:00
Justin Ethier
d078e4d1c1 WIP 2016-09-15 18:47:21 -04:00
Justin Ethier
603d649336 WIP 2016-09-16 03:40:42 -04:00
Justin Ethier
fcfa5bda2f WIP 2016-09-16 03:29:27 -04:00
Justin Ethier
cd1c5eb99d WIP 2016-09-16 01:08:20 -04:00
Justin Ethier
0a352541eb Explicit version number 2016-09-16 01:08:03 -04:00
Justin Ethier
9a6da192e6 Issue #107 - Purge old code 2016-09-14 18:02:53 -04:00
Justin Ethier
a822bc9e91 Pass additional environments to er macro functions 2016-09-14 17:36:53 -04:00
Justin Ethier
9e6fb14e7f Debugging 2016-09-14 04:11:56 -04:00
Justin Ethier
40071e433f Added syntactic closure functions 2016-09-13 23:25:47 -04:00
Justin Ethier
49bfe2649b Added SC placeholders 2016-09-12 18:38:02 -04:00
Justin Ethier
8a0d0e75a5 Bump to 0.2.1 2016-09-08 19:53:15 -04:00
Justin Ethier
0b1f39412a Bump to v0.2 2016-09-07 23:15:57 -04:00
Justin Ethier
2f7a624f15 Added: infinite? finite? nan? 2016-09-06 17:55:10 -04:00
Justin Ethier
a05a27c036 Beta designation 2016-09-02 17:50:28 -04:00
Justin Ethier
7402f287b2 Debugging 2016-09-03 00:15:37 -04:00
Justin Ethier
68c8f54d7a Debugging syntax-rules 2016-09-01 18:51:27 -04:00
Justin Ethier
1241f71e80 Merge fix from Chibi scheme
"Identifiers in the template should only match pattern variables from the same expansion step."
2016-08-31 23:39:53 -04:00
Justin Ethier
2e5a4adcd2 Attempt alternative let-values macro 2016-08-31 23:38:14 -04:00
Justin Ethier
587d83f6b7 Fix indexing in (vector-copy) 2016-08-30 17:34:39 -04:00
Justin Ethier
0c941d2e8d Added optional args to string->vector 2016-08-30 17:07:46 -04:00
Justin Ethier
def5bba06a Pass a value to (set!) a parameter object
Allow changing a parameter object by passing a value directly to it.
2016-08-31 03:05:34 -04:00
Justin Ethier
cec9e5c954 WIP 2016-08-30 22:15:40 -04:00
Justin Ethier
c564db263a Added bytevector ports 2016-08-26 18:27:22 -04:00
Justin Ethier
25c4857eba Issue #57 - Added open-input-string 2016-08-26 23:22:13 -04:00
Justin Ethier
0632d9fae4 Added let*-values and let-values 2016-08-26 22:21:02 -04:00
Justin Ethier
cb25dfd5e3 Header comments, real library name 2016-08-26 20:14:19 -04:00
Justin Ethier
9fe2e1b90b Allocated memory port on heap 2016-08-26 03:51:42 -04:00
Justin Ethier
c46309463b Added string output ports 2016-08-26 03:22:41 -04:00
Justin Ethier
a50ef101b5 Integrating a test library 2016-08-25 03:19:30 -04:00
Justin Ethier
87910d4ffe Use lib:get-all to read library contents
This allows multiple import, export, and begin directives within a define-library.
2016-08-22 17:53:12 -04:00
Justin Ethier
80c10d8eb9 Remove hardcoded tag 2016-08-23 03:51:36 -04:00