K. Rustan M. Leino and Wolfram Schulte
Programming-language mechanisms for throwing and handling exceptions can simplify some computer programs. However, the use of exceptions can also be error prone, leading to new programming errors and code that is hard to understand. This paper describes ways to tame the exception usage in C#. In particular, the paper describes the treatment of exceptions in Spec#, an experimental superset of C# that includes code contracts.
Publisher IEEE Computer Society