This page is part of the web mail archives of SRFI 89 from before July 7th, 2015. The new archives for SRFI 89 contain all messages, not just those from before July 7th, 2015.
On 11-Apr-06, at 3:32 PM, Taylor R. Campbell wrote:
Are these symbols? Keywords? A wholly new, disjoint type of data? I can't find this in the specification; there's only a brief remark about it in the section on implementation, but this is very important since these are otherwise ill-defined data in S-expressions.
Good point.The only requirement is that #!optional, #!key and #!rest be distinct objects (i.e. not eqv? to anything else). The #!foo syntax adopted by DSSSL is probably inspired from the R2RS which had the #!true, #! false, and #!null syntax for true, false and the empty list. Some Scheme systems still use the #!foo syntax for some objects (Gambit and Chez Scheme use #!eof to denote the end-of-file object).