On Sep 24, 12:33 am, Phil Hagelberg <p...@hagelb.org> wrote: > It looks like it's actually a subclass of Exception instead: > > user=> (eval '(throw (InterruptedException.))) > java.lang.InterruptedException (NO_SOURCE_FILE:7) > user=> (class *e) > clojure.lang.Compiler$CompilerException > user=> (.getSuperclass (class *e)) > java.lang.Exception > user=> (.getCause *e) > #<InterruptedException java.lang.InterruptedException> > > I'm on 1.1-SNAPSHOT, so maybe RuntimeException was 1.0 behaviour? In > either case, it seems that the repl is hiding information from us. Or at > the very least it's abstracting it away in a very leaky fashion. > Nope; same with Clojure 1.0 on ClojureBox:
user> (eval '(throw (InterruptedException.))) ; Evaluation aborted. user> (class *e) clojure.lang.Compiler$CompilerException user> (.getSuperclass (class *e)) java.lang.Exception For completeness, trying to catch RuntimeException does not work, but catching Exception does. Regards, -- Michel --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---