# HoleyMonoid: Monoids with holes.

[ bsd3, data-structures, library ] [ Propose Tags ]

The HoleyMonoid allows building monoidal values of which certain components are to be filled in later. For example:

> let holey :: (Show a, Show b) => HoleyMonoid String r (a -> b -> r)
holey = now "x = " . later show . now ", y = " . later show

> run holey 3 5
"x = 3, y = 5"

[Index]