sig
type id = string
val pp_id : Format.formatter -> Interp_util.id -> Ppx_deriving_runtime.unit
val show_id : Interp_util.id -> Ppx_deriving_runtime.string
type op2 = LT | GT | Eq | Add | Sub | Mul | Div | Mod
val pp_op2 :
Format.formatter -> Interp_util.op2 -> Ppx_deriving_runtime.unit
val show_op2 : Interp_util.op2 -> Ppx_deriving_runtime.string
type const = Int of int | Bool of bool
val pp_const :
Format.formatter -> Interp_util.const -> Ppx_deriving_runtime.unit
val show_const : Interp_util.const -> Ppx_deriving_runtime.string
type exp =
Id of Interp_util.id
| Const of Interp_util.const
| Op2 of Interp_util.op2 * Interp_util.exp * Interp_util.exp
| If of Interp_util.exp * Interp_util.exp * Interp_util.exp
| Let of Interp_util.id * Interp_util.exp * Interp_util.exp
| Fun of Interp_util.id * Interp_util.exp
| Fix of Interp_util.id * Interp_util.exp
| App of Interp_util.exp * Interp_util.exp
| Empty
| Cons of Interp_util.exp * Interp_util.exp
| Head of Interp_util.exp
| Tail of Interp_util.exp
| IsEmpty of Interp_util.exp
| Record of (string * Interp_util.exp) list
| GetField of Interp_util.exp * string
val pp_exp :
Format.formatter -> Interp_util.exp -> Ppx_deriving_runtime.unit
val show_exp : Interp_util.exp -> Ppx_deriving_runtime.string
val from_string : string -> Interp_util.exp
val from_file : string -> Interp_util.exp
end