If people really want to be able to combine enumerator methods for higher efficiently the Collection hierarchy should be fixed. Having external iterator objects like in C++ and Java is not that bad after all:
  result := aCollection iterator     select: [ :e | ... ];     collect: [ :e | ... ];     contents
It's already there and it's called #readStream. :-) Â It only lacks #size.
Not in Pharo, but it lacks all iteration methods.
See http://code.google.com/p/pharo/issues/detail?id=958 for an outline of the implementation.
That would be a welcome addition to Pharo. Having an iterator class also avoids having to implement all these iteration methods over and over again, e.g. in visitors. Is this going to be ANSI? Lukas -- Lukas Renggli http://www.lukas-renggli.ch