мне кажется что-нить вроде .map(foo).filter(bar).join(‘’) чуть ли ни в каждом большом проекте есть
Так это 3 * N в худшем случае. Немного не тот пример. Конечно будь это на итераторых было бы быстрее и ленивее, вот в Rust все тоже самоен только через итераторы.