[squeak-dev] [Discussion] Warning vs. Halt (or: "Why is a warning a notification?")

Marcel Taeumel marcel.taeumel at hpi.de
Wed Oct 30 08:52:46 UTC 2019


Hi, there.

At the moment, we have this hierarchy in Squeak's exception mechanism:

Exception < Error
Exception < Notification < Warning
Exception < Halt
Exception < UnhandledError < UnhandledWarning

I think that something is conceptually wrong here. Notifications are supposed to be resumable and do nothing by default. Warnings, on the other hand, are resumable but interrupt the process by default. Like Halt does.

Not now, but in the future, I would like to change it to something like this:

Exception < Error
Exception < Notification
Exception < ResumableInterrupt < Warning
Exception < ResumableInterrupt < Halt
Exception < UnhandledError < UnhandledWarning

Thoughts? Well, there are other notifications that interrupt the current process in a way: EnvironmentRequest, MCMergeResolutionRequest, ... Maybe my definition of "Notification" is wrong?

Best,
Marcel

P.S.: Why is CurrentReadOnlySourceFiles an Exception but CurrentEnvironment is a Notification? Sigh....
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20191030/f5779715/attachment.html>


More information about the Squeak-dev mailing list