A few more comments on Draft #6 of SRFI 121.
Sudarshan S Chawathe 30 Oct 2015 18:21 UTC
Here are some comments on SRFI 121 Draft #6 (2015/10/25). Some are
very minor suggestions, but there are few small bugs and a question
too.
* (very minor) The template "bytevector->generator str..." may be
reworded as "bytevector->generator bvec..." or similar, by analogy
with the other names.
* The examples that use make-vector-generator should use
vector->generator instead; similarly, the instances of
make-reverse-vector-generator should read
reverse-vector->generator.
* (discussion correction; nothing to do in document itself)
Correction to my misstatement in an earlier message: We can use
make-bits-generator to create a generator that yields just a
single #t; it's yielding a single #f that's not feasible with this
constructor.
* The sample implementation of make-port-generator returns the
result of evaluating read-line instead of returning a thunk that
does that.
* (very minor) Unneeded (I think) FIXME comment in
generators-impl.scm for make-for-each-generator.
* (very minor) Extra quote in return value of example just before
Generator operations section.
* Result of the example for gdelete-neighbor-dups is missing a final
c.
* Does gindex provide a guarantee similar to the last sentence of
the description of gselect (would be nice)? To illustrate, is the
following an error?
(gindex (list->generator '(a b c))
(list->generator '(0 2 4 6))))
* For generator-unfold: The order of argument in the example doesn't
match those in the spec and sample implementation.
* In the example for generator-unfold (assuming the order of
arguments is fixed as above): SRFI-1 unfold requires an additional
argument (initial seed), so it still doesn't work unless we say
something like:
(generator-unfold (make-for-each-generator string-for-each "abc")
unfold #\z)
Regards,
-chaw