Gewisse Konzepte, die in der funktionalen Programmierung häufig vorkommen,
sind in imperativen oder objekt-orientierten Sprachen nahezu unbekannt.
Eines dieser Konzepte sind Continuations. Kurz gesprochen ermöglichen
Continuations den Zugriff auf den „Rest“ einer Berechnung. Diesen Rest
kann man sich dann beispielsweise merken und zu einem späteren Zeitpunkt
ausführen.
In diesem Artikel möchte ich Continuations anhand eines praktischen
Beispiels erklären. In einem früheren Artikel
hatte ich schonmal die Architekur von Checkpad MED vorgestellt, eine elektronische
Krankenakte deren Serverkomponente fast vollständig mit Haskell
realisiert ist. In dieser Serverkomponente gibt es einen Teil,
welcher aus Krankhausdaten die Elemente der Benutzeroberfläche
generiert. Nun soll sich natürlich bei Änderung der Krankenhausdaten
auch die Benutzeroberfläche ändern. Und genau dabei spielen Continuations
eine wichtige Rolle…
Weiterlesen...