Safe Haskell | Safe |
---|---|

Language | Haskell2010 |

## Synopsis

# Documentation

NOTE: `DefaultSignatures`

can be used
when declaring a symantic type class
to provide default definition of the methods:
implementing their identity transformation
in order to avoid boilerplate code
when writting `Trans`

instances which
do not need to alterate those methods.

trans :: UnT tr a -> tr a Source #

Lift a tr to the transformer's.

unTrans :: tr a -> UnT tr a Source #

Unlift a tr from the transformer's.

trans1 :: (UnT tr a -> UnT tr b) -> tr a -> tr b Source #

Identity transformation for a unary symantic method.

trans2 :: (UnT tr a -> UnT tr b -> UnT tr c) -> tr a -> tr b -> tr c Source #

Identity transformation for a binary symantic method.

trans3 :: (UnT tr a -> UnT tr b -> UnT tr c -> UnT tr d) -> tr a -> tr b -> tr c -> tr d Source #

Identity transformation for a ternary symantic method.

## Instances

Sym_Lambda term => Trans (BetaT term) Source # | |

Defined in Language.Symantic.Transforming.Beta trans :: UnT (BetaT term) a -> BetaT term a Source # unTrans :: BetaT term a -> UnT (BetaT term) a Source # trans1 :: (UnT (BetaT term) a -> UnT (BetaT term) b) -> BetaT term a -> BetaT term b Source # trans2 :: (UnT (BetaT term) a -> UnT (BetaT term) b -> UnT (BetaT term) c) -> BetaT term a -> BetaT term b -> BetaT term c Source # trans3 :: (UnT (BetaT term) a -> UnT (BetaT term) b -> UnT (BetaT term) c -> UnT (BetaT term) d) -> BetaT term a -> BetaT term b -> BetaT term c -> BetaT term d Source # |