If I understand it correctly something like: range.filter!(...).map!(...) browse range 2 times, one for filter and one for mapping doesn't it? Is there a way to "parallelize" this kind of operations?