do-нотации Applicative и Functor (Option 2). При запуске на выражении в main с (Option 2) реализацией происходит бесконечная рекурсия. В то время как с (Option 1) все норм. (Option 2) была показана в курсе на stepik, где использовался старый компилятор (не проверял, работает ли (Option 2) там). Как можно сделать, чтобы более симпатичная (Option 2) работала за конечное время на компиляторе 8.6.5+? (P.S. Это не задание курса, там ограничились instance Monad)
кстати, для выражения fmap и (<*>) через Monad есть готовые liftM и ap. а pure или return всё-таки надо реализовать вручную.
Действительно. Но с импортом задача не проходит
Обсуждают сегодня