From 6d81175b374e71916ccca7f311c96124d533cdf8 Mon Sep 17 00:00:00 2001 From: Scott Richmond Date: Mon, 25 Apr 2022 19:08:05 -0400 Subject: [PATCH] Wrap interpret in try/catch for more graceful panics --- src/ludus/interpreter.clj | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/ludus/interpreter.clj b/src/ludus/interpreter.clj index 6309cca..fddb02f 100644 --- a/src/ludus/interpreter.clj +++ b/src/ludus/interpreter.clj @@ -331,7 +331,13 @@ (throw (ex-info "Unknown AST node type" {:node ast})))) (defn interpret [parsed] - (interpret-ast (::parser/ast parsed) {})) + (try + (interpret-ast (::parser/ast parsed) {}) + (catch clojure.lang.ExceptionInfo e + (println "Ludus panicked!") + (println (ex-message e)) + (pp/pprint (ex-data e)) + (System/exit 67)))) (comment