[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-hackers] [PATCH] Fix r4rs, , r4rs-null and r5rs-null modules
From: |
Peter Bex |
Subject: |
[Chicken-hackers] [PATCH] Fix r4rs, , r4rs-null and r5rs-null modules |
Date: |
Sat, 14 Oct 2017 21:59:41 +0200 |
User-agent: |
NeoMutt/20170113 (1.7.2) |
Hi all,
I was messing around trying to figure out how to make a working
definition of the "scheme" module without referring to itself,
but found out that r4rs, r4rs-null, and r5rs-null don't work
anymore:
#;1> (module foo (x) (import r4rs) (define x 1))
Error: (require) cannot load extension: r4rs
Interestingly, in CHICKEN 4 this still works for <reasons I was
unable to determine>.
The "r5rs" module does work because it's resolved as "scheme",
which has an entry in core-unit-requirements.
The attached patch fixes this and also takes care of the "XXX" comment
that tells us that "eval" is a requirement of anything that uses one of
the scheme standard modules. I'm not 100% convinced this is the right
thing to do, because this would make it impossible to create a custom
built binary that excludes "eval" and friends.
Finally, should we get rid of r4rs-null and r5rs-null? They're not
documented and they're *not* the same as the first-class
(null-environment), from what I can tell.
Cheers,
Peter
0001-Unbreak-rnrs-modules.patch
Description: Text Data
signature.asc
Description: PGP signature
- [Chicken-hackers] [PATCH] Fix r4rs, , r4rs-null and r5rs-null modules,
Peter Bex <=