QuoteRef: goodJB12_1975 ;;684 operations raise an exception which are handled by their invoker
|
684 ;;Quote: exceptions generalize an operation by extending the domain (allows holes), extending the range, or indicating the last result
|
QuoteRef: goodJB12_1975 ;;684 exceptions allow user to tailor an operation to his needs
|
QuoteRef: goodJB12_1975 ;;684 on range failure: invoker terminates (partial results?) operation terminates, operation restart. clean up of partial results
|
QuoteRef: goodJB12_1975 ;;684 exceptions may be used to classify a valid result (e.g., this is last one)
|
QuoteRef: goodJB12_1975 ;;685 exceptions may be used for monitoring an operation (resume ability) for additional information
|
QuoteRef: goodJB12_1975 ;;685 object-oriented exception handlers eg AED allows exception handler as part of object-definition
|
QuoteRef: goodJB12_1975 ;;686 Hoare: Q1 otherwise Q2 i.e. Q2 local exception handler for Q1
|
QuoteRef: goodJB12_1975 ;;686 exception handlers are default or invoker defined
|
QuoteRef: goodJB12_1975 ;;686 explicit declaration of exceptions possible from a procedure eg returns (fixed) [exceptional: ...]
|
QuoteRef: goodJB12_1975 ;;686 static association of handler with activation point eg (a+b) [overflow:...] attached to syntactic unit
|
QuoteRef: goodJB12_1975 ;;687 exception handlers may include several exceptions and be attached to expressions or statements
|
QuoteRef: goodJB12_1975 ;;687 exception handler reach is syntactic unit it is attached to unless sub units handle the same exception
|
QuoteRef: goodJB12_1975 ;;688 exceptions handled (if implicit) on a subroutine basis
|
QuoteRef: goodJB12_1975 ;;688 exceptions ESCAPE must terminate, NOTIFY may not terminate, and SIGNAL may do either-- these are both exception types and explicit exception indicators
|
QuoteRef: goodJB12_1975 ;;688 can pass exceptions from local to global context
|
QuoteRef: goodJB12_1975 ;;690 in exception handler, EXIT(value) terminates unit and replaces it with value, while EXIT terminates statement
|
QuoteRef: goodJB12_1975 ;;690 RESUME continues execution at statement following exception signaling
|
691 ;;Quote: the ENDED exception is for normal termination with an explicit handler
|
QuoteRef: goodJB12_1975 ;;691 CLEANUP handler can be attached to any SIGNAL statement to be executed if SIGNAL handler EXITS
|
QuoteRef: goodJB12_1975 ;;693 RESUME (DEFAULT) in user defined handler for default condition, causes escape to default handler
|
QuoteRef: goodJB12_1975 ;;693 default handler may be explicitly attached to any SIGNAL or NOTIFY statement
|