[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Why are byte ports "ports" as such?
On 14-Apr-06, at 9:57 AM, John Cowan wrote:
I'll add something in the preamble saying:
The tokens of the form ``foo:'' used in this document will be
On Scheme implementations supporting SRFI 88, these keywords
correspond to the
keyword objects specified in that SRFI. On Scheme
implementations which do not
support SRFI 88, these keywords are symbols.
Which is as much as to say that they need to be quoted on non-SRFI-88
systems, as your followup notes. This is always a safe strategy,
since a quoted keyword evaluates to itself.
Keywords are controversial (if nobody else, I am making controversy
about them!), and this otherwise satisfactory SRFI should not, IMHO,
depend on their presence.
I could add to the spec that
On Scheme implementations that do not support SRFI 88, the
``char-encoding:'', etc are defined to evaluate to the symbol of
the same name. That is
(define direction: 'direction:)
(define char-encoding: 'char-encoding:)
This way these ``keywords'' don't have to be quoted, regardless of
support for SRFI 88.
I'll have to think about this some more but currently I don't see a
problem with that.