sig
type t =
Num of int
| Var of string
| Op of Op.t * S.Ast.t * S.Ast.t
| Ifz of S.Ast.t * S.Ast.t * S.Ast.t
| Let of string * S.Ast.t * S.Ast.t
| App of S.Ast.t * S.Ast.t
| Fun of string * S.Ast.t
| Fix of string * S.Ast.t
val print : Pervasives.out_channel -> S.Ast.t -> unit
end