Monad Transformers Step by Step

Informationen

Martin Grabmüller: Monad Transformers Step by Step, Entwurf, Oktober 2006.

12 Seiten, A4 Format, Englisch.

Zusammenfassung

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.

Download

Dieser Artikel ist elektronisch verfügbar: [ PDF ]

Der Quelltext dieses Artikels, in Form eines Literate Haskell Scripts, ist ebenfalls verfügbar: [ Transformers.lhs ]

BibTeX Eintrag

@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.}
}