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

Safe HaskellNone
LanguageHaskell2010

Language.Syntactic.Interpretation.Evaluation

Synopsis

Documentation

class Eval expr where Source #

Methods

evaluate :: expr a -> Denotation a Source #

Evaluation of expressions

evaluate :: Semantic expr => expr a -> Denotation a Source #

Evaluation of expressions

Instances
Eval Semantics Source # 
Instance details

Defined in Language.Syntactic.Interpretation.Evaluation

Eval Empty Source # 
Instance details

Defined in Language.Syntactic.Constraint

Methods

evaluate :: Empty a -> Denotation a Source #

Eval Tuple Source # 
Instance details

Defined in Language.Syntactic.Constructs.Tuple

Methods

evaluate :: Tuple a -> Denotation a Source #

Eval Select Source # 
Instance details

Defined in Language.Syntactic.Constructs.Tuple

Methods

evaluate :: Select a -> Denotation a Source #

Eval Literal Source # 
Instance details

Defined in Language.Syntactic.Constructs.Literal

Eval Identity Source # 
Instance details

Defined in Language.Syntactic.Constructs.Identity

Eval Construct Source # 
Instance details

Defined in Language.Syntactic.Constructs.Construct

Eval Condition Source # 
Instance details

Defined in Language.Syntactic.Constructs.Condition

Eval Let Source # 
Instance details

Defined in Language.Syntactic.Constructs.Binding

Methods

evaluate :: Let a -> Denotation a Source #

Eval dom => Eval (AST dom) Source # 
Instance details

Defined in Language.Syntactic.Interpretation.Evaluation

Methods

evaluate :: AST dom a -> Denotation a Source #

Monad m => Eval (MONAD m) Source # 
Instance details

Defined in Language.Syntactic.Constructs.Monad

Methods

evaluate :: MONAD m a -> Denotation a Source #

(Eval expr1, Eval expr2) => Eval (expr1 :+: expr2) Source # 
Instance details

Defined in Language.Syntactic.Interpretation.Evaluation

Methods

evaluate :: (expr1 :+: expr2) a -> Denotation a Source #

Eval dom => Eval (dom :|| pred) Source # 
Instance details

Defined in Language.Syntactic.Constraint

Methods

evaluate :: (dom :|| pred) a -> Denotation a Source #

Eval dom => Eval (dom :| pred) Source # 
Instance details

Defined in Language.Syntactic.Constraint

Methods

evaluate :: (dom :| pred) a -> Denotation a Source #

Eval expr => Eval (Decor info expr) Source # 
Instance details

Defined in Language.Syntactic.Constructs.Decoration

Methods

evaluate :: Decor info expr a -> Denotation a Source #

Eval dom => Eval (SubConstr1 c dom p) Source # 
Instance details

Defined in Language.Syntactic.Constraint

Methods

evaluate :: SubConstr1 c dom p a -> Denotation a Source #

Eval dom => Eval (SubConstr2 c dom pa pb) Source # 
Instance details

Defined in Language.Syntactic.Constraint

Methods

evaluate :: SubConstr2 c dom pa pb a -> Denotation a Source #

evaluateDefault :: Semantic expr => expr a -> Denotation a Source #

Default implementation of evaluate