# Automatic Differentiation via Effects and Handlers: An Implementation in Frank

arXiv: https://arxiv.org/abs/2101.08095 · HTML: https://mlsanity.com/paper/2101.08095/

## Key facts

- No citing papers in the map yet (data through 14 Oct 2026).
- Builds on 2 of its 14 references that are in the map.
- First posted on arXiv 20 Jan 2021.

## Builds on (most cited first, 2 of 2)

- [Demystifying Differentiable Programming: Shift/Reset the Penultimate Backpropagator](https://mlsanity.com/paper/1803.10228/) (2018)
- [Do be do be do](https://mlsanity.com/paper/1611.09259/) (2016)

## Abstract (arXiv)

Automatic differentiation (AD) is an important family of algorithms which enables derivative based optimization. We show that AD can be simply implemented with effects and handlers by doing so in the Frank language. By considering how our implementation behaves in Frank's operational semantics, we show how our code performs the dynamic creation of programs during evaluation.
