Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
data Expression v Source #
Var v | |
Global Qualified | |
App (Expression v) (Expression v) | |
Let (Expression v) (Scope () Expression v) | |
Lam (Scope () Expression v) | |
Record [(Field, Expression v)] | |
Proj Field | |
Case (Expression v) [(Pattern Int, Scope Int Expression v)] | |
If (Expression v) (Expression v) (Expression v) | |
List [Expression v] | |
String !Text | |
Int !Integer | |
Float !Double |
Instances
apps :: Foldable f => Expression v -> f (Expression v) -> Expression v Source #
appsView :: Expression v -> (Expression v, [Expression v]) Source #
(|>) :: Expression v -> Expression v -> Expression v Source #
(<|) :: Expression v -> Expression v -> Expression v Source #
(<<) :: Expression v -> Expression v -> Expression v Source #
(>>) :: Expression v -> Expression v -> Expression v Source #
(++) :: Expression v -> Expression v -> Expression v Source #
tuple :: Expression v -> Expression v -> Expression v Source #
foldMapGlobals :: Monoid m => (Qualified -> m) -> Expression v -> m Source #