hydra-0.1.1: Type-aware transformations for data and programs
Safe HaskellSafe-Inferred
LanguageHaskell2010

Hydra.Adapters.Coders

Description

Entry point for Hydra's adapter (type/term rewriting) framework. An adapter takes a type expression which is supported in a source language, and rewrites it to a type which is supported by a target language. In parallel, terms conforming to the original type are rewritten. Both levels of the transformation are bidirectional.

Documentation

adaptType :: (Ord m, Read m, Show m) => Language m -> Type m -> GraphFlow m (Type m) Source #

transformModule :: (Ord m, Read m, Show m) => Language m -> (Term m -> GraphFlow m e) -> (Module m -> Map (Type m) (Coder (Context m) (Context m) (Term m) e) -> [(Element m, TypedTerm m)] -> GraphFlow m d) -> Module m -> GraphFlow m d Source #