14 ms·
That is literally what Common Lisp has and GP describes… https://en.m.wikibooks.org/wiki/Common_Lisp/Advanced_topics/Condition_System https://en.m.wikibooks.or
by masklinn 2y ago
That is literally what Common Lisp has and GP describes…
https://en.m.wikibooks.org/wiki/Common_Lisp/Advanced_topics/Condition_System https://en.m.wikibooks.org/wiki/Common_Lisp/Advanced_topics/...
- taeric 2y agoIt is always fun when people learn some of the things that common lisp has done for a long time.
- foota 2y agoI realize you could probably build this in lisp, but this (by default) seems to be missing the part about jumping back to where the exception was raised, instead of resuming flow control from where the restart was defined, iiuc.
- masklinn 2y agoThere is nothing to build, restarts act on the location where the condition was raised. In a conditions system unwinding is a restart, conditions don't unwind before running handlers. The ability to update a value would make no sense otherwise. I repeat, what you describe is literally how common-lisp works. Today. And how it has worked for 40 odd years. Also smalltalk.
- igouy 2y agohttps://cuis-smalltalk.github.io/TheCuisBook/Inspecting-the-Unexpected.html https://cuis-smalltalk.github.io/TheCuisBook/Inspecting-the-... https://cuis-smalltalk.github.io/TheCuisBook/The-Debugger.html https://cuis-smalltalk.github.io/TheCuisBook/The-Debugger.ht... https://cuis-smalltalk.github.io/TheCuisBook/Halt_0021.html https://cuis-smalltalk.github.io/TheCuisBook/Halt_0021.html