Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Journal articles
  4. Effects as Capabilities: Effect Handlers and Lightweight Effect Polymorphism
 
research article

Effects as Capabilities: Effect Handlers and Lightweight Effect Polymorphism

Brachthaeuser, Jonathan Immanuel  
•
Schuster, Philipp
•
Ostermann, Klaus
November 1, 2020
Proceedings Of The Acm On Programming Languages-Pacmpl

Effect handlers have recently gained popularity amongst programming language researchers. Existing type-and effect systems for effect handlers are often complicated and potentially hinder a wide-spread adoption. We present the language Effekt with the goal to close the gap between research languages with effect handlers and languages for working programmers. The design of Effekt revolves around a different view of effects and effect types. Traditionally, effect types express which side effects a computation might have. In Effekt, effect types express which capabilities a computation requires from its context. While this new point in the design space of effect systems impedes reasoning about purity, we demonstrate that it simplifies the treatment of effect polymorphism and the related issues of effect parametricity and effect encapsulation. To guarantee effect safety, we separate functions from values and treat all functions as second-class. We define the semantics of Effekt as a translation to System E, a calculus in explicit capability-passing style.

  • Files
  • Details
  • Metrics
Type
research article
DOI
10.1145/3428194
Web of Science ID

WOS:000685203900003

Author(s)
Brachthaeuser, Jonathan Immanuel  
Schuster, Philipp
Ostermann, Klaus
Date Issued

2020-11-01

Published in
Proceedings Of The Acm On Programming Languages-Pacmpl
Volume

4

Start page

126

Subjects

Computer Science, Software Engineering

•

Computer Science

•

effect handlers

•

algebraic effects

•

effect polymorphism

Editorial or Peer reviewed

REVIEWED

Written at

EPFL

EPFL units
LAMP1  
Available on Infoscience
September 11, 2021
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/181254
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés