[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: importing srfi-101
Aubrey Jaffer wrote:
| Date: Thu, 17 Sep 2009 13:50:12 -0400
| From: David Van Horn <dvanhorn@xxxxxxxxxxxxxxx>
| Aubrey Jaffer wrote:
| > http://srfi.schemers.org/srfi-101/srfi-101-tests.sls contains an
| > import statement:
| > ... What would be the import statement to have all the standard
| > identifiers imported, excepting the list-related ones, which
| > would come from srfi-101 (with their standard names)?
| It would be:
| (import (except (rnrs base) cons car cdr ...etc...)
| (prefix (only (rnrs base) null?) r6:)
| (rnrs exceptions)
| (srfi :101))
I think having SRFI-101 shadow R6RS identifiers is the most common way
that SRFI-101 would be used. As it stands now, every prospective user
must pour through the SRFI-101 specification to create the list of all
the identifiers it binds. This duplication of effort serves no
purpose. Please add a complete import statement (replacing ...etc...)
to the text of SRFI-101 as an example of use.
Thanks for the suggestion. I'll incorporate this into the next
revision. As a convenience, I can just provide a library that is (rnrs
base), except for the list stuff, which will come from (srfi :101), plus
all the added bindings, like list-set, etc.
That brings up another issue. Should this SRFI provide a `quote' form
that produces random-access pairs? Should this SRFI provide
`vector->list', `list->vector', and so on, for all the things in the
R6RS base library that consume or construct lists? Should a definition
of `equal?' be given that works as you would expect for random-access pairs?