Martin Grabmüller: Monad Transformers Step by Step, Entwurf, Oktober 2006.
12 Seiten, A4 Format, Englisch.
In diesem Tutorial beschreiben wir, wie man Monadentransformers benutzen kann, um Haskell-Programme schrittweise um Funktionalitäten zu erweitern. Dies ist keine Anleitung, wie man Monadtentransformer implementieren kann, sondern wie man sie benutzt um elegante, saubere und mächtige Programme in Haskell zu schreiben. Beginnend mit einer einfachen Auswertungsfunktion für einfache Ausdrücke, konvertieren wir sie in monadische Form und fügen nach und nach Fehlerbehandlung, das Durchreichen von Umgebungsdaten, Zustand, Logging und Ein- und Ausgabe hinzu, indem wir Monadentransformer geeignet komponieren.
Dieser Artikel ist elektronisch verfügbar: [ PDF ]
Der Quelltext dieses Artikels, in Form eines Literate Haskell Scripts, ist ebenfalls verfügbar: [ Transformers.lhs ]
@Unpublished{Grabmueller2006MonadTransformers,
author = {Martin Grabm{\"u}ller},
title = {{Monad Transformers Step by Step}},
note = {Draft paper},
month = {October},
year = 2006,
abstract = {In this tutorial, we describe how to use monad
transformers in order to incrementally add
functionality to Haskell programs. It is not a paper
about implementing transformers, but about using
them to write elegant, clean and powerful programs
in Haskell. Starting from an evaluation function for
simple expressions, we convert it to monadic style
and incrementally add error handling, environment
passing, state, logging and input/output by
composing monad transformers.}
}