T>Есть кайф... Вот как можно вычислить факториал на Haskell. Я люблю этот язык ))
T>
[skiped]
T>int = cata phi where
T> phi Z = 0
T> phi (S f) = 1 + f
T>instance Show (Mu N) where
T> show = show . int
T>
Здесь лишняя N-алгебра типа N Integer -> Integer, которая катаморфизируется в int. Требуется только для отладки и тестирования Для вычисления факториала не нужна.