type text_in_spec = {result_in : Lexing.lexbuf -> MathQL.result}
-val check_arity : MathQL.path -> int -> int -> unit
+val fun_arity : MathQL.path -> int -> int -> unit
-val eval : eval_spec -> text_out_spec -> text_in_spec ->
+val fun_eval : eval_spec -> text_out_spec -> text_in_spec ->
MathQL.path -> MathQL.path list -> MathQL.query list ->
- MathQL.result
+ MathQL.result
-val txt_out : text_out_spec ->
+val fun_txt_out : text_out_spec ->
MathQL.path -> MathQL.path list -> MathQL.query list -> unit
+val gen_arity : MathQL.path -> int -> unit
+
+val gen_eval : eval_spec ->
+ MathQL.path -> MathQL.query list -> MathQL.query
+
exception ArityError of MathQL.path * arity_t * int
exception NameError of MathQL.path