Files
2024B1-AP/a2/a2-handout/src/APL/AST.hs
2024-09-19 15:54:56 +02:00

26 lines
371 B
Haskell

module APL.AST
( VName,
Exp (..),
)
where
type VName = String
data Exp
= CstInt Integer
| CstBool Bool
| Add Exp Exp
| Sub Exp Exp
| Mul Exp Exp
| Div Exp Exp
| Pow Exp Exp
| Eql Exp Exp
| If Exp Exp Exp
| Var VName
| Let VName Exp Exp
| Lambda VName Exp
| Apply Exp Exp
| TryCatch Exp Exp
| Print String Exp
deriving (Eq, Show)