| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell98 |
Autolib.Multilingual
Contents
Synopsis
- data Language
- languages :: [Language]
- data Type a = Make {}
- make :: [(Language, a)] -> Type a
- specialize :: Language -> Type a -> a
- fold_nullary :: a -> Type a
- fold_unary :: (a -> b) -> Type a -> Type b
- fold_binary :: (a -> a -> a) -> Type a -> Type a -> Type a
- fold_list :: ([a] -> b) -> [Type a] -> Type b
- uniform :: a -> Type a
Documentation
Instances
implementation note: all languages must be present as keys in the map. otherwise this adds too much strictness. we need that ($$) is lazy in the second argument (for lazily outputting kommentar of a reporter that is still running)
specialize :: Language -> Type a -> a Source #
pick the version for this language. if not available, then pick version for any language.
Combinators
fold_nullary :: a -> Type a Source #
fold_unary :: (a -> b) -> Type a -> Type b Source #