22 lines
342 B
OCaml
22 lines
342 B
OCaml
|
type binop =
|
||
|
| Plus
|
||
|
| Minus
|
||
|
| Times
|
||
|
| Div
|
||
|
[@@deriving eq, ord, show]
|
||
|
|
||
|
type projection =
|
||
|
| First
|
||
|
| Second
|
||
|
[@@deriving eq, ord, show]
|
||
|
|
||
|
type t =
|
||
|
| Var of Identifier.t
|
||
|
| IntConst of int
|
||
|
| Binop of t * binop * t
|
||
|
| Pair of t * t
|
||
|
| Proj of projection * t
|
||
|
| Fun of Identifier.t * t
|
||
|
| App of t * t
|
||
|
[@@deriving eq, ord, show]
|