понедельник, 29 мая 2017 г.

Реализация pipe/composition операций в языке C#

В функциональных языках вроде F# и разных командных оболочках часто можно встретить поддержку "потоковых" операций для работы с данными. Это называется pipe или forwarding или как нибудь-еще, но суть одна – данные подаются на вход одной функции, затем другой, третьей и так далее, и как бы по конвееру перемещаются от источника к приемнику. Также возможна ситуация, когда нескольких элементарных функций объединяются в одну, и потом уже эта функция используется для обработки данных. Такое объединение в функциональной парадигме называется композицией.