Minor comments on Draft #3.
Sudarshan S Chawathe 25 Oct 2015 21:53 UTC
Some minor comments on SRFI 127 Draft #3 (2015/10/25):
* lseq-second is used but not defined (though it is easy to infer
the intent as a generalization from SRFI-1).
* The in-order property of lseq-for-each may be more obvious with a
slightly modified example, something like:
(let ((v (make-vector 5)))
(lseq-for-each (let ((count 0))
(lambda (i)
(vector-set! v count (* i i))
(set! count (+ count 1))))
'(0 1 2 3 4))
v)
* lseq-filter and lseq-remove: Is it true that the dynamic order in
which pred is applied is unspecified, as it is for lseq-map?
* For some of the searching procedures (lseq-find, lseq-find-tail,
lseq-memq, ..., and lseq-assq, ...), is there a guarantee the
predicate is evaluated on the lseq elements in sequence order and,
further, only when necessary (i.e., short-circuiting)? (The
descriptions of lseq-any, lseq-every, and lseq-index do specify
in-order short-circuiting applications.)
* The expression just before lseq-take-while is introduced seems
like it belongs closer to the comment about "general-predicate
variant of the lseq-member function."
Regards,
-chaw