Issue SOME
Issue: SOME

On this page is only an aligned comparison of both descriptions for the functions :(CLHS EVERY), :(CLHS SOME), :(CLHS NOTEVERY), and :(CLHS NOTANY), the one in the CLHS and the CLtL2 version, for your convenience. The issue itself is only included on the page Proposed ANSI Revisions and Clarifications to avoid a mere copy that is to be maintained separately.

clhs:  every, some, notevery, and notany test elements of sequences for satisfaction of a given predicate.
clhs:  The first argument to predicate is an element of the first sequence; each succeeding argument is an element of a succeeding sequence.

cltl2: These are all predicates. The predicate must take as many arguments as there are sequences provided.

clhs:      Predicate is first applied to the elements with index 0 in each of the sequences, and possibly then to the elements with index 1,
cltl2: The predicate is first applied to the elements with index 0 in each of the sequences, and possibly then to the elements with index 1,
clhs:  and so on, until a termination criterion is met or the end of the shortest of the sequences is reached.
cltl2: and so on, until a termination criterion is met or the end of the shortest of the sequences is reached.

cltl2: If the predicate has side effects, it can count on being called first on all the elements numbered 0, then on all those numbered 1, and so on.

clhs:  every returns false as soon as any invocation of predicate returns false. If the end of a sequence is reached, every returns true.
cltl2: every returns nil   as soon as any invocation of predicate returns nil.   If the end of a sequence is reached, every returns a non-nil value.
clhs:  Thus,                            every returns true if and only if every invocation of predicate returns true.
cltl2: Thus, considered as a predicate, it    is      true             if every invocation of predicate is      true.

clhs:  some returns the first non-nil value which is returned by an invocation of predicate.
cltl2: some returns as soon as any invocation of predicate returns a non-nil value; some returns that value.
clhs:  If the end of a sequence is reached without any invocation of the predicate returning true, some returns false.
cltl2: If the end of a sequence is reached,                                                        some returns nil.
clhs:  Thus,                            some returns true if and only if some invocation of predicate returns true.
cltl2: Thus, considered as a predicate, it   is      true if             some invocation of predicate is      true.

clhs:  notany returns false as soon as any invocation of predicate returns true.            If the end of a sequence is reached, notany returns true.
cltl2: notany returns nil   as soon as any invocation of predicate returns a non-nil value. If the end of a sequence is reached, notany returns a non-nil value.
clhs:  Thus,                            notany returns true if and only if it is not the case that any invocation of predicate returns true.
cltl2: Thus, considered as a predicate, it     is      true if                   no                    invocation of predicate is      true.

clhs:  notevery returns true            as soon as any invocation of predicate returns false. If the end of a sequence is reached, notevery returns false.
cltl2: notevery returns a non-nil value as soon as any invocation of predicate returns nil.   If the end of a sequence is reached, notevery returns nil.
clhs:  Thus,                            notevery returns true if and only if it is not the case that every invocation of predicate returns true.
cltl2: Thus, considered as a predicate, it       is      true if                   not               every invocation of predicate is      true.