| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Weave.Strict
Description
Strict weaves are the naive implementation of the idea "what if we generalized zip to free monads?"
The resulting breadth-first unfold take quadratic time, which is slow.
The main reason for making this available is to compare it with the other variants.
Documentation
data Weave (m :: Type -> Type) a where Source #
Strict weaves.
The Applicative operation ( combines weaves level-wise.liftA2)
Constructors
| Pure :: forall a (m :: Type -> Type). a -> Weave m a | |
| Weft :: forall (m :: Type -> Type) a. m (Weave m a) -> Weave m a |
Instances
| Applicative m => Applicative (Weave m) Source # | |
| Functor m => Functor (Weave m) Source # | |