Без обид, но Ваш. Передавать оператор суммы -- это жесть. 
 Да, соглашусь. Учитывая, что мой опыт программирования на эрланге к тому времени был около недели - вполне ожидаемая ошибка. Вы С++ тоже неделю учили?
Чем больше маленьких функций, тем лучше, так что ли?
 Тут Вы правильно заметили, это действительно лучше.
 Ну, по мне так это читабельности не сильно помогает.
 Я понял, что по Вышему означает "читабельность". В Вашем коде её переизбыток.
Вы лично мои слова восприняли. Лучше скажите зачем Вы всё это писали, убили столько времени?  Задача-то пустяковая. Стоила ли она этих извращений?
Ну что, бывает. То, что Вам непонятно, я уже понял. Непонятно только, о чём этот факт говорит больше -- о коде или о Вас.
 Это говорит о языке. Он совершенно непригоден для этой задачи. Вы это очень хорошо продемонстрировали.
Метод парабол -- строчки с 32 по 42, из которых половина для читабельности и две указание распараллелить код. Вы их не нашли? А мне казалось, Вы хотели посмотреть, как на c++ "правильно" обращаться с функциями "в общем виде" на простом примере.
 В том-то и дело. Полезного кода 3 строчки. Что делает остальной код? Совместимость алгоритма с языком программирования? 
 
 А, Вы даже не просмотрели код. Ну тогда о чём мы говорим?
 Я посмотрел, но, возможно, не увидел. Я и сейчас не вижу. Зачем Вы всё в одну строчку пишите? Думаете код короче сделать? Вообще если использовать лямбда-функции, то код получится такой же как на шарпе. Тогда для меня вообще загадка - что делает весь Ваш код.