hermit-0.5.0.0: Haskell Equational Reasoning Model-to-Implementation Tunnel

Safe HaskellNone
LanguageHaskell2010

HERMIT.Dictionary.Function

Synopsis

Documentation

staticArgR :: (ExtendPath c Crumb, ReadPath c Crumb, AddBindings c, HasEmptyContext c) => Rewrite c HermitM CoreDef Source

Traditional Static Argument Transformation

staticArgPosR :: (ExtendPath c Crumb, ReadPath c Crumb, AddBindings c, HasEmptyContext c) => [Int] -> Rewrite c HermitM CoreDef Source

Static Argument Transformations which requires that arguments in the given position are static.

staticArgPredR Source

Arguments

:: (ExtendPath c Crumb, ReadPath c Crumb, AddBindings c, HasEmptyContext c) 
=> ([(Int, Var)] -> HermitM [Int])

given list of static args and positions, decided which to transform

-> Rewrite c HermitM CoreDef 

Generalized Static Argument Transformation, which allows static arguments to be filtered.

staticArgTypesR :: (ExtendPath c Crumb, ReadPath c Crumb, AddBindings c, HasEmptyContext c) => Rewrite c HermitM CoreDef Source

Static Argument Transformation that only considers type arguments to be static.