Найти в Дзене
Охота на математику

Блеск конвейера, нищета композиции

Обычная наглядная понятная цепочка-конвейр методов вида
f9(2,
f8(4, 3, f1(
f2(), 1)))
с бооольшими трудами и лишними словами преобразуется в композицию.
Реализация композиции (если бы это было возможно) на Scheme (или другом функциональном языке): В функциональном языке (например, Scheme или Haskell), где функция compose определена, было бы желательно выразить это как композицию функций. Однако, данное выражение не совсем подходит для прямой композиции в классическом понимании, потому что: • Функции принимают разное количество аргументов. • Аргументы не передаются последовательно через функции, а вкладываются друг в друга. Можно попытаться смоделировать это, создавая промежуточные функции:

Обычная наглядная понятная цепочка-конвейр методов вида
f9(2,
f8(4, 3, f1(
f2(), 1)))

с бооольшими трудами и лишними словами преобразуется в композицию.


Реализация композиции (если бы это было возможно) на Scheme (или другом функциональном языке):

В функциональном языке (например, Scheme или Haskell), где функция compose определена, было бы желательно выразить это как композицию функций. Однако, данное выражение не совсем подходит для прямой композиции в классическом понимании, потому что:

• Функции принимают разное количество аргументов.

• Аргументы не передаются последовательно через функции, а вкладываются друг в друга.

Можно попытаться смоделировать это, создавая промежуточные функции: