>
>
> > Folding Enumerators
> > -------------------
>
> > procedure: collection-keys-fold-left ...
> > procedure: collection-keys-fold-right ...
>
> I prefer collection-fold-keys-increasing and
> collections-fold-keys-decreasing.
Thats reasonable, though the intent was to have symmetry between the
value and key enumerators.
> > update. The returned collection may share structure with the
> > input collection, but must be distinct with respect to eq? to the
> > input collection, and the effects of the update must not be
> > reflected in the input collection.
>
> Why must the returned collection be distinct with respect to eq?
> Suppose I have a set implementation, where sets are represented
> as sorted lists, then it would be natural to let
> (union A '()) return A.
Excellent point. There really isn't a need to be pointer distinct. The
important aspect is the latter qualification. I'll remove that part of
the sentence.
>
>
> > Functional vs Linear Update
> > ---------------------------
> > _Collections_
>
> > procedure: *-values collection => list
>
> Why not simply name it collection->list ?
> This is similar to vector->list and string->list.
>
Sounds good. And correspondingly *-keys->list.
Scott