JUCS - Journal of Universal Computer Science 13(8): 1047-1072, doi: 10.3217/jucs-013-08-1047
Improving Program Correctness with Atomic Exception Handling
expand article infoChristof Fetzer, Pascal Felber
‡ University of Neuchâtel, Neuchâtel, Switzerland
Open Access
Abstract
Exception handling is a powerful mechanisms for dealing with failures at runtime. It simplifies the development of robust programs by allowing the programmer to implement recovery actions and tolerate non-fatal errors. Yet, exception handling is difficult to get right! The complexity of correct exception handling is a major cause for incorrect exception handling. It is therefore important to reduce the complexity of writing exception handling code while, at the same time, making sure it is correct. Our approach is to use atomic blocks for exception handling combined with optional compensation actions.
Keywords
exception handling, transactional memory