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:
- Streng getypt, d.h. alle ihre Elemente haben den gleichen Datentyp.
- Endlich oder Unendlich. (*)
(*) 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 ]