Существует библиотека операторов диапазона с намерением исправить это. Многословие было разрезано несколько раз.
Ваш пример выглядел бы примерно так:
auto newVector = myVector * doSomething;
Да, doSomething
- без круглых скобок.
Знакомая идиома из оболочки (с помощью std-алгоритма):
auto t = vector{3,2,1,4} | sort | unique;