Effect Capabilities For Haskell

Ismael Figueroa 1, 2 Nicolas Tabareau 2, 3 Éric Tanter 1
2 ASCOLA - Aspect and composition languages
LINA - Laboratoire d'Informatique de Nantes Atlantique, Département informatique - EMN, Inria Rennes – Bretagne Atlantique
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. Build- ing upon the idea of capability-based security, we propose effect capabilities as an effective and flexible manner to control monadic effects and their interfer- ences. Capabilities can be selectively shared between modules to establish secure effect-centric coordination. We further refine capabilities with type-based per- mission 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.
Type de document :
Communication dans un congrès
Brazilian Symposium on Programming Languages (SBLP), Sep 2014, Maceio, Brazil. 2014
Liste complète des métadonnées

Littérature citée [22 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-01038053
Contributeur : Nicolas Tabareau <>
Soumis le : mercredi 23 juillet 2014 - 11:07:34
Dernière modification le : jeudi 7 décembre 2017 - 01:26:04
Document(s) archivé(s) le : mardi 25 novembre 2014 - 14:00:48

Fichier

main_sblp.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : hal-01038053, version 1

Citation

Ismael Figueroa, Nicolas Tabareau, Éric Tanter. Effect Capabilities For Haskell. Brazilian Symposium on Programming Languages (SBLP), Sep 2014, Maceio, Brazil. 2014. 〈hal-01038053〉

Partager

Métriques

Consultations de la notice

532

Téléchargements de fichiers

244