Translating R7RS standard library imports to R6RS equivalents
R7RS imports like
(scheme base) are not currently translated to R6RS imports like
It's not too hard to import the required identifiers from
(rnrs) along with some shims for the different ones, but how do we avoid importing other
rnrs definitions that the library is not using?
- We could use huge
onlyclauses but that may get a bit unwieldy.
- We could code-walk the R7RS library to find out which identifiers it contains. If some of those identifiers are exported by
rnrsbut not by the R7RS imports listed by the library, we could
(import (except (rnrs) those identifiers)).