Sciweavers

APLAS
2008
ACM

Exception Handlers as Extensible Cases

14 years 2 months ago
Exception Handlers as Extensible Cases
Abstract. Exceptions are an indispensable part of modern programming languages. They are, however, handled poorly, especially by higherorder languages such as Standard ML and Haskell: in both languages a well-typed program can unexpectedly fail due to an uncaught exception. In this paper, we propose a technique for type-safe exception handling. Our approach relies on representing exceptions as sums and assigning exception handlers polymorphic, extensible row types. Based on this representation, we describe an implicitly typed external language EL where well-typed programs do not raise any unhandled exceptions. EL relies on sums, extensible records, and polymorphism to represent exceptionhandling, and its type system is no more complicated than that for existing languages with polymorphic extensible records. EL is translated into an internal language IL that is a variant of System F extended with extensible records. The translation performs a CPS transformation to represent exception ha...
Matthias Blume, Umut A. Acar, Wonseok Chae
Added 12 Oct 2010
Updated 12 Oct 2010
Type Conference
Year 2008
Where APLAS
Authors Matthias Blume, Umut A. Acar, Wonseok Chae
Comments (0)