[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

SRFI 10

This page is part of the web mail archives of SRFI 108 from before July 7th, 2015. The new archives for SRFI 108 contain all messages, not just those from before July 7th, 2015.



On rereading SRFI 10, I see that it only prescribes the syntax #,(<tag>
<datum>*).  It explicitly says that the define-reader-ctor procedure is
merely a suggestion and not part of the SRFI.  However, your qualifier
"when all the expressions are literal" in the "Readtable literals"
section is always true in SRFI 10 syntax.

Therefore, I would consider subsuming SRFI 10 into SRFI 108 by desugaring
#,(foo a b "10" 32) as #&foo[&{'a 'b "10" 32}].  Note that symbols and
lists must be quoted as well as strings in order to force them to be
interpreted as datums.  Since this makes define-reader-ctor unnecessary,
and it is unscoped and has phasing problems, I would leave it out.

To resolve the conflict between SRFI 10's use of #, and its use by
syntax-rules, #. could be provided as an alternative to #,.  Originally,
CL #. meant read-time evaluation and #, meant load-time, but #, was
removed in ANSI CL because it was confusing and often badly implemented.
Though it is true that SRFI 10 #, is more restrictive than CL #., the
difference is not really that large.

-- 
I don't know half of you half as well           John Cowan
as I should like, and I like less than half     cowan@xxxxxxxx
of you half as well as you deserve.             http://www.ccil.org/~cowan
        --Bilbo