Summary
Drop builtin-features from eval.scm
Metadata
- Id: c3b02fb9ab348e5d788846e15db4a881f4f9120e
- Trac id: 1777
- Type: defect
- Reporter: sjamaan
- Owner:
- Cc:
- Status: closed
- Component: core libraries
- Estimated difficulty: easy
- Resolution: fixed
- Priority: major
- Milestone: 5.4
- Version: 5.2.0
- Changetime: 2022-10-21 16:11:09 UTC
- Created: 2021-08-19 14:18:46 UTC
- Keywords:
Description
This seems like it's a hack from ye olden days when we didn't have a module system yet, and for example `(require srfi-30)` would otherwise try to attempt loading a unit library named srfi-30.
This is confusing and a bit weird, and also there's `##sys#features` which might run out of sync with this features list.
To make this change, the srfi module registrations should be changed to be as part of the `library` unit. For example by changing `register-primitive-module` to use `#f` or `'library` as the module library name.
NOTE: Check what the situation with `chicken.csi` and `chicken.foreign` is - can they also use `#f` or `'library`?
Changes and comments
[2021-08-19 14:32:28 UTC] sjamaan wrote:
I checked, and actually `(require srfi-30)` did give an error in 4.13. Also, [[[https://srfi.schemers.org/srfi-55/srfi-55.html|SRFI-55]|]] doesn't expand to `require` but to `import` in CHICKEN 5, so I think it won't get broken by this change, either.
[2022-10-21 16:11:09 UTC] sjamaan changed status from new to closed
[2022-10-21 16:11:09 UTC] sjamaan set resolution to fixed
[2022-10-21 16:11:09 UTC] sjamaan wrote:
Was fixed as part of 137ae4adb