open Eval let _ = eval_reset(); evalp "let add1 x = x +1;;"; let n : int = eval "n" "let n = add1 2;;" in print_string "n = "; print_int n; print_newline(); eval_reset(); print_string "2 + 7 * 3 = "; print_int (evalexp "2 + 7 * 3"); print_newline(); try let n : int = evalv "n" in print_string "n = "; print_int n; print_string "\nThis is bad - eval not reset!\n" with EvalError -> print_string "n is not defined! good!\n"