Eff Directly in OCaml

12/31/2018
by   Oleg Kiselyov, et al.
0

The language Eff is an OCaml-like language serving as a prototype implementation of the theory of algebraic effects, intended for experimentation with algebraic effects on a large scale. We present the embedding of Eff into OCaml, using the library of delimited continuations or the multicore OCaml branch. We demonstrate the correctness of the embedding denotationally, relying on the tagless-final-style interpreter-based denotational semantics, including the novel, direct denotational semantics of multi-prompt delimited control. The embedding is systematic, lightweight, performant and supports even higher-order, 'dynamic' effects with their polymorphism. OCaml thus may be regarded as another implementation of Eff, broadening the scope and appeal of that language.

READ FULL TEXT
research
02/02/2023

A Framework for Higher-Order Effects Handlers

Algebraic effects handlers are a modular approach for modeling side-...
research
03/07/2022

Handling Higher-Order Effects

Algebraic effect handlers is a programming paradigm where programmers ca...
research
04/19/2023

A Calculus for Scoped Effects Handlers

Algebraic effects handlers have become a standard approach for side-...
research
04/04/2023

Gradual Typing for Effect Handlers

We present a gradually typed language, GrEff, with effects and handlers ...
research
07/17/2023

Modular Denotational Semantics for Effects with Guarded Interaction Trees

We present guarded interaction trees – a structure and a fully formalize...
research
07/25/2023

Higher-Order Asynchronous Effects

We explore asynchronous programming with algebraic effects. We complemen...
research
10/25/2019

Runners in action

Runners of algebraic effects, also known as comodels, provide a mathemat...

Please sign up or login with your details

Forgot password? Click here to reset