If you are familiar with structured exception handling, as provided in Ada, C++, Java, C#, ML, Python, or Ruby, consider how this mechanism relates to the issue of scoping. Conventionally, a raise or...



If you are familiar with structured exception handling, as provided in Ada,


C++, Java, C#, ML, Python, or Ruby, consider how this mechanism relates


to the issue of scoping. Conventionally, a raise or throw statement is


thought of as referring to an exception, which it passes as a parameter to


a handler-finding library routine. In each of the languages mentioned, the


exception itself must be declared in some surrounding scope, and is subject to the usual static scope rules. Describe an alternative point of view, in


which the raise or throw is actually a reference to a handler, to which it


transfers control directly. Assuming this point of view, what are the scope


rules for handlers? Are these rules consistent with the rest of the language?


Explain. (For further information on exceptions, see Section 9.4.)

Nov 14, 2021
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here