free-compiler-0.3.0.0: A Haskell to Coq compiler.

Safe HaskellNone
LanguageHaskell2010

FreeC.Backend.Agda.Converter.Type

Description

Implements the lifted IR to Agda translation for types.

Synopsis

Documentation

convertLiftedFuncType :: Bool -> [Type] -> Type -> Converter Expr Source #

Converts a lifted IR function type to an Agda type expression.

If the type contains decreasing annotations, a size type variable is bound and used to annotate these occurrences.

convertLiftedConType :: [Type] -> Type -> Converter Expr Source #

Converts a constructor type from lifted IR to Agda.

If the constructor contains decreasing arguments (i.e., recursive arguments), a new sized type variable is bound and used to annotate these types.