-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | LazyIO applicative for asymptotic performance -- -- Producing data structures lazily is builtin pure haskell, but the IO -- monad is strict meaning Functor and Applicative have wildy different -- asymptotics (for IO). Using lazy IO allows effectful mappings WITH -- lazy streaming. LazyIO actions are expected to be commutative up to -- correctness. @package lazyio-applicative @version 0.1.0.3 module Control.Applicative.LazyIO -- | Internals guarantee work does not repeat across threads -- (unsafeInterleaveIO) data LazyIO a -- | IO action should be commutative (order independent) liftLazyIO :: IO a -> LazyIO a runLazyIO :: LazyIO a -> IO a instance GHC.Base.Functor Control.Applicative.LazyIO.LazyIO instance GHC.Base.Applicative Control.Applicative.LazyIO.LazyIO