A semantics for imprecise exceptions

Citation
Sp. Jones et al., A semantics for imprecise exceptions, ACM SIGPL N, 34(5), 1999, pp. 25-36
Citations number
10
Categorie Soggetti
Computer Science & Engineering
Journal title
ACM SIGPLAN NOTICES
ISSN journal
15232867 → ACNP
Volume
34
Issue
5
Year of publication
1999
Pages
25 - 36
Database
ISI
SICI code
1523-2867(199905)34:5<25:ASFIE>2.0.ZU;2-6
Abstract
Some modern superscalar microprocessors provide only imprecise exceptions. That is, they do not-guarantee to report the same exception that would be e ncountered by a straightforward sequential execution of the program. In exc hange, they offer increased performance or decreased chip area (which amoun t to much the same thing). This performance/precision tradeoff has not so far been much explored at th e programming language level. In this paper we propose a design for impreci se exceptions in the lazy functional programming language Haskell. We discu ss several designs, and conclude that imprecision is essential if the langu age is still to enjoy its current rich algebra of transformations. We sketc h a precise semantics for the language extended with exceptions. The paper shows how to extend Haskell with exceptions without crippling the language or its compilers. We do not yet have enough experience of using t he new mechanism to know whether it strikes an appropriate balance between expressiveness' and performance.