Advertisement
Hinski2

Untitled

May 26th, 2024
16
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.77 KB | None | 0 0
  1. (* abstract syntax tree *)
  2.  
  3. type bop = Mult | Div | Add | Sub | Eq | Lt | Gt | Leq | Geq | Neq | And | Or
  4.  
  5. type ident = string
  6. type cname = string
  7.  
  8. type pattern =
  9. | PWildcard
  10. | PUnit
  11. | PVar of ident
  12. | PInt of int
  13. | PBool of bool
  14. | PPair of pattern * pattern
  15. | PCtor of cname * pattern
  16.  
  17. type expr =
  18. | Unit
  19. | Int of int
  20. | Bool of bool
  21. | Var of ident
  22. | Binop of bop * expr * expr
  23. | If of expr * expr * expr
  24. | Let of pattern * expr * expr (*zmiana ident na pattern*)
  25. | Fun of pattern * expr (*zmiana ident na pattern*)
  26. | App of expr * expr
  27. | Pair of expr * expr
  28. | Fst of expr
  29. | Snd of expr
  30. | Ctor of cname * expr
  31. | Match of expr * clause list
  32. | Raise
  33. | Try of expr * expr
  34.  
  35. and clause = pattern * expr
  36.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement