LINUX.ORG.RU

История изменений

Исправление Macil, (текущая версия) :

монады - лишние сущности

Вот оказывается как! Только... Только почему тогда их везде, где только можно лепят?

Например, f.foo().bar().baz() — устойчивый ООП-стиль.

Некоторые особо упертые еще идут еще дальше:

f.foo(function(f){f.bar(function(b){b.baz(...){...}})})
и преподносят чуть ли не как наивысшее достижение.

Любая сущность, для которой есть операция композиции — потенциальный кандидат на instance Monad. А операция композиции есть почти всегда, например те же копирующие конструкторы в C++.

Исходная версия Macil, :

монады - лишние сущности

Вот оказывается как! Только... Только почему тогда их везде, где только можно лепят?

Например, f.foo().bar().baz() — устойчивый ООП-стиль.

Некоторые особо упертые еще идут еще дальше:

f.foo(function(f){f.bar(function(b){b.baz(...)})})
и преподносят чуть ли не как наивысшее достижение.

Любая сущность, для которой есть операция композиции — потенциальный кандидат на instance Monad. А операция композиции есть почти всегда, например те же копирующие конструкторы в C++.