3 ms·
http://c2.com/cgi/wiki?CommonLispConditionSystem http://c2.com/cgi/wiki?CommonLispConditionSystem "When an exception is thrown in Java, the stack unwinds meani
by olewhalehunter 11y ago
http://c2.com/cgi/wiki?CommonLispConditionSystem http://c2.com/cgi/wiki?CommonLispConditionSystem
"When an exception is thrown in Java, the stack unwinds meaning all state in stack frames from the point of the throw to the handler gets thrown out."
"In Common Lisp, the stack does not unwind and high level logic can simply restart the computation (after fixing the error or trying different strategies) without losing any intermediate state. This killer feature is what makes interactive debugging possible."
Not enforcing a functional paradigm also makes prototyping easier.
- natrius 11y agoThanks! That's completely new to me. You got me looking into Dire, which looks like a similar pattern for error handling. https://github.com/MichaelDrogalis/dire https://github.com/MichaelDrogalis/dire