data-fresh-0.2013.251.0: Interface and functor transformers for fresh values

Safe HaskellNone

Control.Monad.Trans.Fresh.Delta

Synopsis

Documentation

newtype FreshT v m a Source

Constructors

FreshT 

Fields

runFreshT :: Cofree Triplet v -> m (a, Cofree Triplet v)
 

Instances

Applicative m => Fresh v (FreshT v m) 
MonadTrans (FreshT v) 
Monad m => Monad (FreshT v m) 
Functor m => Functor (FreshT v m) 
Applicative m => Applicative (FreshT v m) 

seedDeltaSource

Arguments

:: v

Delta seed

-> (v -> v)

Successor

-> (v -> (v, v))

Splitter

-> Cofree Triplet v 

Creates a Cofree Triplet v, based on a seed, and functions to split and succeed it.

integerPairDelta :: (Integer, Integer) -> Cofree Triplet (Integer, Integer)Source

A delta of integer pairs.