monad-transformers

mtl, transformers, monads-fd, monadLib, y la paradoja de la elección

Hackage tiene varios paquetes para monad transformers: mtl : Monad transformer library transformadores : Transformadore ... os de alguna manera? ¿Y Andy y Ross consideran que alguno de sus propios paquetes es obsoleto? ¿Cuál debe usted y yo ¿usar?

La mónada de la Pausa

Las mónadas pueden hacer muchas cosas increíbles y locas. Pueden crear variables que contienen una superposición de valores. ... s en el registro. (Obviamente esto impide alterar el estado entre pasos, ya que realmente no estamos "pausando" nada ahora.)

Evitar la elevación con transformadores de mónada

Tengo un problema para que una pila de transformadores de mónada (o incluso un transformador de mónada) sobre IO. Todo está b ... o es realmente de tipos mixtos? ¿No sería bueno si GHC lanzó un poco de azúcar sintáctica (por ejemplo, <-$ = <- lift)?

¿Por qué no hay transformador IO en Haskell?

Cada otra mónada viene con una versión transformadora, y por lo que sé la idea de un transformador es una extensión genérica ... age para el transformador ST menciona un problema posiblemente relacionado en su descripción, pero no ofrece ningún detalle.)

Goto en Haskell: ¿Puede alguien explicar este efecto aparentemente loco del uso de la mónada de continuación?

Desde este hilo (Control.Mónada.Cont fun, 2005), Tomasz Zielonka introdujo una función (comentada de una manera clara y agra ... undefined Agrega esas líneas, compila y ejecuta. Todos los números están impresos. ¿Qué ha pasado en el ejemplo anterior?

Ejemplo de transformador de mónada no trivial más simple para "dummies", IO + Tal vez

Podría alguien dar un ejemplo de transformador de mónada súper simple (pocas líneas), que no es trivial (es decir, no usar la ... la mónada IO+Maybe o la mónada Maybe+IO? ¿Tendría sentido crear tal mónada compuesta? En caso afirmativo, ¿cuándo y por qué?

Qué es la mónada RWS y cuándo se utiliza

Me encontré con la mónada RWS y su monadtransformador mientras buscaba algo en la biblioteca mtl. No hay documentación real ... una pila de esos tres transformadores mónadas. Lo que no puedo entender es por qué esto es mejor que el Estado por sí mismo.

Monad transformers libraries - ¿cuál usar? [cerrado]

Hay muchas bibliotecas diferentes de monad transformers en Hackage. Unos pocos parecen recibir más atención que los otros. Po ... mtlx, contstuff. ¿Cuál debería preferirse y por qué? ¿Cuáles son sus características únicas? ¿Qué pasa con el rendimiento?

Enhebrar estado extra a través de un analizador sintáctico en Scala

Te daré el tl; dr por adelantado Estoy tratando de usar el transformador de mónada de estado en Scalaz 7 para enhebrar esta ... ar el estado a través de un analizador sintáctico, pero los ejemplos de Scalaz 6 o Haskell también serían útiles y apreciado.

¿Por qué se considera que el transformador de mónada ListT es defectuoso ? ¿ Qué leyes de mónada rompe?

He visto mencionado que ListT es un ejemplo clásico de un transformador de mónada con errores que no satisface las leyes ... ne este requisito, o hay otro problema? (Los ejemplos en Haskell wiki todos usan ListT IO y IO obviamente no es conmutativo.)

Cómo inyectar un valor Maybe en MaybeT

Digamos que tengo algo foo :: Maybe Int y quiero enlazarlo, por ejemplo, con bar :: Int -> MaybeT (Writer String) Int, ¿cu ... ail "Nothing") return in liftMaybe foo >>= bar ¿Pero hay una forma más idiomática (o al menos concisa) de hacer eso?