19 votos

¿Es la «Mónada (w (,))' instancia cualquier estándar?

Utilizar la ortografía par de Writer todo el tiempo, pero siempre tienes que crear una instancia de mí mismo:

instance (Monoid w) => Monad ((,) w) where
    return x = (mempty, x)
    ~(w,x) >>= f = let (w', y) = f x in (w `mappend` w', y)

¿Este vive en cualquier lugar en las bibliotecas estándar?

8voto

Yitz Puntos 3262

Como camccann mencionado en el comentario, Control.Monad.Instances define sólo la Functor instancia.

Control.Monad.Applicativedefine el Applicative instancia.

El transformers paquete y así también versión 2 y arriba de la mtl del paquete, definir una función de contenedor writer :: (a, w) -> Writer w a .

Pero no he encontrado el Monad ejemplo en cualquier lugar.

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X