Publications

Stats

View publication

Title Effect Capabilities for Haskell
Authors Ismael Figueroa, Nicolas Tabareau, Éric Tanter
Publication date 2014
Abstract Computational effects complicate the tasks of reasoning
about and
maintaining software, due to the many kinds of interferences that can occur.
While different proposals have been formulated to alleviate the fragility
and burden of dealing with specific effects, such as state or exceptions,
there is no prevalent robust mechanism that addresses the general
interference issue. Building upon the idea of capability-based security, we
propose effect capabilities as an effective and flexible manner to control
monadic effects and their interferences. Capabilities can be selectively
shared between modules to establish secure effect-centric coordination. We
further refine capabilities with type-based permission lattices to allow
fine-grained decomposition of authority. We provide an implementation of
effect capabilities in Haskell, using type classes to establish a way to
statically share capabilities between modules, as well as to check proper
access permissions to effects at compile time. We exemplify how to tame
effect interferences using effect capabilities, by treating state and
exceptions.
Downloaded 5 times
Pages 92-108
Conference name Brazilian Symposium on Programming Languages
Publisher Springer-Verlag (Berlin/Heidelberg, Germany)
PDF View PDF
Reference URL View reference page