Capabilities: Effects for Free
Date
Authors
Craig, Aaron
Potanin, Alex
Groves, Lindsay
Aldrich, Jonathan
Journal Title
Journal ISSN
Volume Title
Publisher
Springer
Access Statement
Abstract
Object capabilities are increasingly used to reason informally about the properties of secure systems. But can capabilities also aid in formal reasoning? To answer this question, we examine a calculus that uses effects to capture resource use and extend it to support capability-based reasoning. We demonstrate that capabilities provide a way to reason about effects: we can bound the effects of an expression based on the capabilities to which it has access. This reasoning is “free” in that it relies only on type-checking (not effect-checking), does not require the programmer to add effect annotations within the expression, and does not require the expression to be analysed for its effects. Our result sheds light on the essence of what capabilities provide and suggests ways of integrating lightweight capability-based reasoning into languages.
Description
Keywords
Citation
Collections
Source
Type
Book Title
Formal Methods and Software Engineering - 20th International Conference on Formal Engineering Methods, ICFEM 2018, Proceedings
Entity type
Publication