Project 48: Event handling in Fortran 8X Como 1987: ========== The Fortran 8x proposals for "condition" handling are only in the appendix of the most recent document. There are 5 intrinsic conditions (NUMERIC_ERROR, BOUND ERROR, IO_ERROR, END_OF_FILE, ALLOCATION_ERROR), and also user-defined conditions. Handlers can be provided at the end of the block (any user- specified ENABLE block) in which any such condition is SIGNALed. The WG 2.5 could try out these ideas, and urge their inclusion in 8x, and also possibly propose improvements such as (1) adding UNINITILIZED to INTRINSICS; (2) distinguishing OVERFLOW, UNDERFLOW and other, say, DOMAIN_ERROR; (3) adding some provision for substituting a value in place of a CONDITION, such as zero for UNDERFLOW, or a function value for the result of a function that signals a CONDITION; (4) making sure that the proposed facilities are useful for large libraries such as NAG and IMSL. Implementation considerations must be kept in mind. Delves noted that in its Ada library NAG used the basic Ada exception handling, and that error messages returned from subroutines, although handled in numerical libraries, in general may present a problem. Gentleman added that condition handling is a general problem in mixed language environments, and that there may be conflicts in exception handling (e.g. unwanted operating system intervention on I/O errors). A straw vote initiated by Reid on "Should there be any exception handling in Fortran 8x" showed that majority of the WG 2.5 supported some form of exception handling in Fortran 8x. Stanford 1988: ============== T. Hull noted that event handling in FORTRAN was a dead issue and the project will be merged with the 8X project [20]. He then talked about a more general, and very current issue, of attaching of exception handlers to operators. This approach extends the definition of an operator. A detailed description of the technique will appear as a TOMS paper. It was noted that in some instances problems may arise with concurrency because of communication overheads (busy-wait). Beijing 1988: ============= Document: T. Hull. The draft paper presented by Hull at the previous meeting was published in ACM TOMS. Exception handling in the C language was briefly discussed (Hanson, Vouk, Fosdick).