Wednesday, August 12, 2015

Safe Free Monads!


I won't be summarizing this one for you, but the ideas are very cool. It brings space-bounds as a form of safety to Free Monad instances.

Free monads are a useful tool for abstraction, separating specification
from interpretation. However, a naive free monad implementation can lead
to stack overflow depending on the evaluation model of the host language.
This paper develops a stack-safe free monad transformer in
PureScript, a strict Haskell-like language compiling to Javascript, and demonstrates
certain applications - a safe implementation of coroutines, and a generic
mechanism for building stack-safe control operators.

No comments:

Post a Comment