(* Generate a fresh variable from a given prefix, e.g. "counter" -> "counter$1" *) val fresh_var : string -> string (* Generate an Ast.loc tuple from Lexing data structures *) val loc_from_lexpos : Lexing.position -> Lexing.position -> Ast.loc (* Default transformation traversal for AST nodes *) val transform_children : (Ast.node -> Ast.node) -> Ast.node -> Ast.node (*val visit_children : (Ast.node -> unit) -> Ast.node -> unit*) (* Extract location from node *) val locof : Ast.node -> Ast.loc