|
Open issues for SRFI 113
John Cowan
(04 Dec 2013 04:37 UTC)
|
|
Re: Open issues for SRFI 113
Kevin Wortman
(08 Dec 2013 04:35 UTC)
|
|
Re: Open issues for SRFI 113 John Cowan (08 Dec 2013 18:05 UTC)
|
|
Re: Open issues for SRFI 113
John Cowan
(08 Dec 2013 18:15 UTC)
|
|
Re: Open issues for SRFI 113
Kevin Wortman
(09 Dec 2013 00:43 UTC)
|
|
Re: Open issues for SRFI 113
John Cowan
(09 Dec 2013 08:04 UTC)
|
|
Re: Open issues for SRFI 113
Alex Shinn
(09 Dec 2013 08:16 UTC)
|
|
Re: Open issues for SRFI 113
John Cowan
(09 Dec 2013 15:59 UTC)
|
|
Re: Open issues for SRFI 113
Alex Shinn
(09 Dec 2013 00:39 UTC)
|
|
Re: Open issues for SRFI 113
John Cowan
(09 Dec 2013 17:13 UTC)
|
|
Re: Open issues for SRFI 113
Alex Shinn
(10 Dec 2013 01:18 UTC)
|
|
Re: Open issues for SRFI 113
John Cowan
(10 Dec 2013 21:35 UTC)
|
|
Re: Open issues for SRFI 113
Alex Shinn
(11 Dec 2013 00:55 UTC)
|
|
Re: Open issues for SRFI 113
John Cowan
(16 Dec 2013 07:12 UTC)
|
Kevin Wortman scripsit:
> [8] I think symbols are best.
Agreed; removed.
> [12] I think it should be comparators only. Otherwise there is an implicit
> union type of comparator-or-equality-predicate. Code that depends on
> this SRFI, or mimics it, would also need to deal with the
> comparator-or-equality-predicate type, so code handling that concern
> would be scattered all over the place. Creating a comparator is easy so
> I think it's reasonable to expect client code to do that.
I agree. My only reservation is that hash tables will have to support
naked equality predicates for backward compatibility with SRFI 69 and
R6RS. But I think we can allow them in that SRFI and deprecate them
instead of allowing them anywhere. Removed.
> [13] In my use cases the time and effort that it takes programmers to find
> and import multiple fine-grained libraries is far costlier than the time
> it might take a Scheme environment to load a single coarse one, so I say
> stick with one library.
It's not so much time-to-load as namespace pollution. The library as
currently specified introduces 238 identifiers. Admittedly they are
named according to a fairly small number of patterns, which hopefully
will make collisions unlikely. I'll leave things as they are.
> [14] This can be deceptively complex with mutable structures, since all the
> interactions between mutative operations and pre-existing cursors need
> to be defined precisely.
Or just say, as Java does and as I do in HashTablesCowan, that the effect
of mutating a hash table with live cursors is undefined.
> If we do go down this route I would advocate using streams (lazy
> sequences) for this purpose rather than inventing a new cursor API.
I'll hold off on anything like that for this SRFI then until we get
to streams. Closed.
> Presently one could iterate through a set by converting it to a list and
> using established list iteration methods, admittedly with O(n) space
> overhead. Are there use cases where this would be inadequate?
Character sets in the Unicode domain are an obvious counterexample.
In Unicode 6.3, for example, (char-set->list char-set:letter) returns
a list of 89,843 characters. Still, we could leave that functionality
just in SRFI 14.
--
Overhead, without any fuss, the stars were going out.
--Arthur C. Clarke, "The Nine Billion Names of God"
John Cowan <xxxxxx@ccil.org>