Portability | non-portable |
---|---|

Stability | experimental |

Maintainer | hpacheco@di.uminho.pt |

Pointless Haskell: point-free programming with recursion patterns as hylomorphisms

This module defines generic GHood observations for user-defined data types.

# Definition of generic observations

Class for mapping observations over functor representations.

functorOf :: Fix f -> StringSource

Derives a type representation for a functor. This is used for showing the functor for reursion trees.

watch :: Fix f -> x -> Rep f x -> StringSource

Watch values of a functor. Since the fixpoint of a functor recurses over himself, we cannot use the `Show`

instance for functor values applied to their fixpoint.

fmapO :: Fix f -> (x -> ObserverM y) -> Rep f x -> ObserverM (Rep f y)Source

Maps an observation over a functor representation.