Eliot Miranda wrote:
On Wed, Apr 23, 2014 at 10:42 PM, Sven Van Caekenberghe <s...@stfx.eu> wrote:
I am sorry, but I disagree.

Yes, technically, much of what we take for granted is partially possible in most other languages, but it is often hard to use, an add-on, an afterthought. But more important, Java developers even do not use debuggers/inspectors/browsers during development, let alone during production. It's just edit/compile/run/crash - add some print statements and run again. During production its all massive plain logging.

And the crucial linguistic difference is Smalltalk's (and LISP's) resume semantics for exceptions vs Java's restart semantics.  This difference is that in Smalltalk the exception handler is executed in the context of the exception, allowing the programmer to see the point of error and provide a value with which to /resume/ execution.  In Java the exception is delivered in the context of the handler, discarding the execution state that caused the exception, only allowing the program to /restart/ the code that caused the exception, and making investigating the cause of the exception impossible in the current run. 

Thanks for that Eliot.  Its very interesting to learn that distinction. 
cheers -ben

Reply via email to