off-topic 2026-02-28

I think today I learned why Rich decided to stick to exceptions despite how awesome CL-like condition systems are :) (the reason is that all the Java libs use throw statements from which restarting isn't meaningful in any capacity).

A hosted language has to "live with" the host ecosystem -- the JVM, JS, and CLR all treat exceptions as idiomatic in their primary language(s). I guess they'd be less so in Clojerl but that's more of an edge case in the Clojure world.

Yeah there's no denying that; still, conditions in and of themselves are an extension of exceptions more than a clashing concept, to the point that the JVM bytecode to CL compiler I saw the other day (iirc it was called OpenLDK or something, it recently managed to get a JVM Clojure repl running) straight up implements exceptions with conditions

2

Don't both live on a scale the end of which is Algebraic Effects?

I feel that algebraic effects are too general to be considered an extension of conditions.

Meant conditions are a special case of algebraic effects

It's a "can be implemented using" relationship