Imperial College London

DrSteffenvan Bakel

Faculty of EngineeringDepartment of Computing

Senior Lecturer
 
 
 
//

Contact

 

+44 (0)20 7594 8263s.van.bakel Website

 
 
//

Location

 

425Huxley BuildingSouth Kensington Campus

//

Summary

 

Publications

Citation

BibTex format

@inproceedings{van:2019:10.1145/3354166.3354186,
author = {van, Bakel S},
doi = {10.1145/3354166.3354186},
publisher = {ACM},
title = {Exception handling and classical logic},
url = {http://dx.doi.org/10.1145/3354166.3354186},
year = {2019}
}

RIS format (EndNote, RefMan)

TY  - CPAPER
AB - We present λtry, an extension of the λ-calculus with named exception handling, via try, throw and catch, and present a basic notion of type assignment expressing recoverable exception handling and show that it is sound. We define an interpretation for λtry to Parigot's λμ-calculus, and show that reduction (both lazy and call by value) is preserved by the interpretation. We will show that also types assignable in the basic system are preserved by the interpretation.We will then add a notion of total failure through halt that escapes applicative contexts without being caught by a handler, and show that we can interpret this in λμ when adding top as destination. We will argue that introducing handlers for halt will break the relation with λμ.We will conclude the paper by showing that it is possible to add handlers for program failure by introducing panic and dedicated handlers to λtry. We will need to extend the language with a conditional construct that is typed in a non-traditional way, that cannot be expressed in λμ or logic. This will allow both recoverable exceptions and total failure, dealt with by handlers; we will show a non-standard soundness result for this system.
AU - van,Bakel S
DO - 10.1145/3354166.3354186
PB - ACM
PY - 2019///
TI - Exception handling and classical logic
UR - http://dx.doi.org/10.1145/3354166.3354186
UR - http://hdl.handle.net/10044/1/83333
ER -