Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are alternatives to JVM exceptions for reporting and handling errors in clojure code?

Background

The book The Joy of Clojure explains how JVM exceptions are a closed system and suggests that there may be better alternatives for reporting and handling errors in clojure. From my experience, the common lisp condition system seems ideal, however, I am not restricting answers to this paradigm. From what I've researched there are conditions (Gilardi) http://clojure.github.com/clojure-contrib/condition-api.html , error-kit (Chouser) http://richhickey.github.com/clojure-contrib/error-kit-api.html, and handler (Weiss) https://gist.github.com/745223, however there does not appear to be a clear winner among these implementations and I feel more information on topic would be useful.

How have existing alternatives been successfully used in projects? I'm looking for examples to emulate.

How do these alternative systems overcome limitations with the JVM exception system?

What are the future directions or what are experimental alternatives on the horizon and what they entail?

like image 675
bmillare Avatar asked Nov 06 '22 05:11

bmillare


1 Answers

FYI, this is being discussed in clojure-dev. Ideas collecting here and thread here.

like image 164
Alex Miller Avatar answered Nov 15 '22 06:11

Alex Miller