Listen in Haskell - Einführung


[ Gliederung ] [ Einführung ] [ Listenoperationen I ] [ Vollständige Induktion ] [ Listenoperationen II ] [ Literatur ]

Gliederung: Einführung


Eigenschaften von Listen in Haskell

Listen in Haskell sind:

(*) Daß es möglich ist unendliche Listen in Haskell zu definieren, und auch sinnvoll damit zu arbeiten, ist eine Folge des faulen Auswertens (Lazy Evaluation) von Ausdrücken. Wir werden hierfür noch Beispiele sehen.


Syntax

Grundsätzlicher Aufbau:
data List a = Nil | Cons a (List a)
Konstruktion einer Liste:
Cons x1 (Cons x2 (Cons x3 Nil))
Syntax:
[x1,x2,x3] = x1:(x2:(x3:[])) = x1:x2:x3:[] (*)
Spezielle Syntax für [Char]:
“Hallo“ = [‘H‘,‘a‘,‘l‘,‘l‘,‘o‘] (**)
(*) Auf die Klammern kann verzichtet werden, da (:) rechts-assoziativ ist.
(**) Ich werde im Folgenden sehr häufig String-Literale als Beispiele für Listen verwenden. Man sollte sich also stets vor Augen führen, daß es sich hierbei um eine Liste handelt.


[ Gliederung ] [ Einführung ] [ Listenoperationen I ] [ Vollständige Induktion ] [ Listenoperationen II ] [ Literatur ]