syntactic-1.8: Generic abstract syntax, and utilities for embedded languages

Safe HaskellNone




type family Denotation sig Source

The denotation of a symbol with the given signature

class Eval expr whereSource


evaluate :: expr a -> Denotation aSource

Evaluation of expressions


Eval Semantics 
Eval Empty 
Eval Condition 
Eval Construct 
Eval Identity 
Eval Literal 
Eval Tuple 
Eval Select 
Eval Let 
Eval dom => Eval (AST dom) 
Monad m => Eval (MONAD m) 
(Eval expr1, Eval expr2) => Eval (:+: expr1 expr2) 
Eval dom => Eval (:|| dom pred) 
Eval dom => Eval (:| dom pred) 
Eval expr => Eval (Decor info expr) 
Eval dom => Eval (SubConstr1 c dom p) 
Eval dom => Eval (SubConstr2 c dom pa pb)