// evalText is like eval.Evaler.SourceText except that it reports errors. func evalText(ev *eval.Evaler, name, src string) bool { n, err := parse.Parse(name, src) if err != nil { printError(err, "Parse error") return false } op, err := ev.Compile(n, name, src) if err != nil { printError(err, "Compile error") return false } err = ev.Eval(op, name, src) if err != nil { printError(err, "Exception") return false } return true }