srfi.258
- インターンされないシンボル ¶This SRFI defines a common interface to handle uninterned symbols.
Uninterned symbols are the symbols that are not registered to the
internal hashtables mapping names to symbols. There’s no way to
get a symbol eq?
to an existing uninterned symbol, except
being passed a direct reference to it. It is handy for legacy Lisp
macros to avoid name collisions, for uninterned symbols created
during macro expansion will never conflict with symboss created
elsewhere.
With its hygiene macro system, Scheme does not need uninterned symbols to avoid name conflicts in macros. Nevertheless, many Scheme implementations, including Gauche, provide this facility, partly to ease porting other Lisp idioms, or a handy way to get a unique object.
This SRFI is defined so that the user program can access uninterned symbosl portably, if the implementation provides one.
Gauche has the following two procedures defined in this SRFI as built-in:
string->uninterned-symbol symbol-interned?
See シンボル, for the details.