Module

Data.Semiring.Free

Package
purescript-semirings
Repository
purescript/purescript-semirings

#Free Source

newtype Free a

The free Semiring for a type a.

Constructors

Instances

#free Source

free :: forall a. a -> Free a

Lift a value of type a to a value of type Free a

#liftFree Source

liftFree :: forall s a. Semiring s => (a -> s) -> Free a -> s

Free is left adjoint to the forgetful functor from Semirings to types.

#lowerFree Source

lowerFree :: forall s a. Semiring s => (Free a -> s) -> a -> s

Free is left adjoint to the forgetful functor from Semirings to types.