lazy-0.1: Explicit laziness for Haskell

Safe HaskellNone
LanguageHaskell2010

Lazy

Documentation

data Lazy value Source #

Instances
Monad Lazy Source # 
Instance details

Defined in Lazy

Methods

(>>=) :: Lazy a -> (a -> Lazy b) -> Lazy b #

(>>) :: Lazy a -> Lazy b -> Lazy b #

return :: a -> Lazy a #

fail :: String -> Lazy a #

Functor Lazy Source # 
Instance details

Defined in Lazy

Methods

fmap :: (a -> b) -> Lazy a -> Lazy b #

(<$) :: a -> Lazy b -> Lazy a #

Applicative Lazy Source # 
Instance details

Defined in Lazy

Methods

pure :: a -> Lazy a #

(<*>) :: Lazy (a -> b) -> Lazy a -> Lazy b #

liftA2 :: (a -> b -> c) -> Lazy a -> Lazy b -> Lazy c #

(*>) :: Lazy a -> Lazy b -> Lazy b #

(<*) :: Lazy a -> Lazy b -> Lazy a #

Comonad Lazy Source # 
Instance details

Defined in Lazy

Methods

extract :: Lazy a -> a #

duplicate :: Lazy a -> Lazy (Lazy a) #

extend :: (Lazy a -> b) -> Lazy a -> Lazy b #

lazy :: value -> Lazy value Source #

unlazy :: Lazy value -> value Source #