Summary
Separate library into safe and unsafe parts
Metadata
- Id: 92022e18dbc31f264ca7571739a8008afd7e139a
- Trac id: 1666
- Type: enhancement
- Reporter: felix
- Owner:
- Cc:
- Status: closed
- Component: core libraries
- Estimated difficulty: medium
- Resolution: wontfix
- Priority: minor
- Milestone: 5.4
- Version: 5.1.0
- Changetime: 2023-03-11 13:58:35 UTC
- Created: 2020-01-24 21:27:38 UTC
- Keywords:
Description
Many internal primitives in library.scm are compiled in safe mode, but are not strictly required to be safe. For normal primitives we want argument-count checking, etc., but since safeness declarations can only be scoped globally, all low-level interal procedures are compiled in safe mode as well, preventing possible optimizations by the compiler.
I suggest having two files, library.scm and library-u.scm (for example), one compiled safe, the other unsafe. It should be possible to easily move definitions from one to the other, so that it can be done on a case-by-case basis.
Changes and comments
[2020-01-24 21:34:22 UTC] felix set difficulty to medium
[2020-01-24 21:34:22 UTC] felix changed milestone from someday to 5.3
[2021-04-12 13:24:40 UTC] sjamaan changed milestone from 5.3 to 5.4
[2021-04-12 13:24:40 UTC] sjamaan wrote:
Might be handled once we implement #1611. Anyway, not for 5.3
[2023-03-11 13:58:35 UTC] felix changed status from new to closed
[2023-03-11 13:58:35 UTC] felix set resolution to wontfix
[2023-03-11 13:58:35 UTC] felix wrote:
Too broad, just adds complexity and the gain is unclear.