Ben Darwin on Programming with Algebraic Effects and Handlers

Toronto - August 5, 2015

Ben Darwin on Programming with Algebraic Effects and Handlers

Description

Handlers for algebraic effects are a promising development in managing complexity in software. In addition to the prototypal implementation in Eff (http://www.eff-lang.org/), they've also been implemented variously as a Haskell library, in the experimental functional languages Idris, Koka, and F-star, and in an experimental branch of the Ocaml compiler (https://github.com/ocamllabs/opam-repo-dev). I'll begin by looking for some intuitive motivation for the concept as a generalization of familiar ideas like exceptions. After looking at the syntax and semantics of the new constructs, we'll consider a number of examples (in Eff and/or Ocaml) from the paper including implementing probabilistic programming and thread scheduling. I'll briefly compare such effect systems against Haskell's monad transformers without getting into details of the latter

Bio

Ben Darwin is a programmer at Sick Kids Hospital's Mouse Imaging Centre.


Shopify The Toronto Chapter would like to thank Shopify for helping to make this meetup possible.