-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
enhancementNew feature or requestNew feature or requestplannedDesign complete, ready to startDesign complete, ready to start
Description
Context
TODO at machine/compile_time_continuation.go:424:
// TODO: implement case-insensitive parsing by creating parser with caseInsensitive=true
Problem
R7RS §2.1 specifies #!fold-case and #!no-fold-case directives that control case sensitivity of subsequent identifiers. The parser already has a caseInsensitive parameter, but the compile-time continuation code that invokes the parser doesn't use it. This means #!fold-case has no effect at compile time.
Suggested approach
- Thread the case-sensitivity flag through the compile-time continuation's parser creation
- Ensure
#!fold-case/#!no-fold-casedirectives toggle the flag during tokenization - Add tests for case-folded identifiers in
includeandinclude-ciforms
R7RS reference
The directive
#!fold-casecauses subsequent identifiers and character names to be case-folded. The directive#!no-fold-casereverses the effect.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestplannedDesign complete, ready to startDesign complete, ready to start