A Monadic Semantics for Core Curry1 1This work has been supported in part by the National Science Foundation under grants CCR-0110496 and CCR-0218224

Andrew P. Tolmach, Sergio Antoy · Electronic Notes in Theoretical Computer Science · 2003

We give a deterministic, big-step operational semantics for the essential core of the Curry language, including higher-order functions, call-by-need evaluation, non-determinism, narrowing, and residuation. The semantics is structured in modular monadic style, and is presented in the form of an executable interpreter written in Haskell. It uses monadic formulations of state, non-determinism, and resumption-based concurrency.

Read the paper · More papers on PaperTik