2 ms·
We'll address this issue in a couple of releases. It'll be compliant to R7RS and mostly backward-compatible to existing code. The features is already in the d
by shiro 12y ago
We'll address this issue in a couple of releases. It'll be compliant to R7RS and mostly backward-compatible to existing code. The features is already in the dev HEAD.
The trick is:
- There'll be a "keyword" module that conceptually binds and exports all possible names beginning with ':'. Each name is bound to itself.
- The keyword module is implicitly visible to Gauche native programs (inheriting "gauche" module). So, the identifiers beginning with ':' behaves as if they're keywords, unless you rebinds them explicitly.
- From vanilla R7RS, nothing is special with identifier beginning with ':'. You can import the keyword module to make it behave like keywords.