List Comprehensions



next up previous contents
Next: Lambda Ausdrücke Up: Spezielle Sprachkonstrukte Previous: Arithmetische Folgen

List Comprehensions

List comprehension ist eine sehr leistungsfähige Technik zur Listen-Verarbeitung. Die Grundstruktur von list comprehension ist:

        [ expr | qualifiers ]
wobei qualifiers eine der folgenden drei Formen annehmen kann: Innerhalb einer list comprehension können mehrere qualifiers angegeben werden, die jeweils durch ein Komma getrennt werden müssen.
Beispiele:
        [ (x,y) | x <- [1 .. 3], y <- [1 .. 2] ] =
                [(1,1), (1,2), (2,1), (2,2), (3,1), (3,2)]

        [ (x,y) | x <- [1 .. 3], y <- [1 .. x] ] =
                [(1,1), (2,1), (2,2), (3,1), (3,2), (3,3)]

        [ x | x <- [1 .. 10] ] = [ 2, 4, 6, 8, 10 ]

        [ x | x <- [1,2], x <- [3, 4] ] = [ 3, 4, 3, 4]

        [ x | x <- [ [1, 2], [3, 4] ], x <- x ] = [1, 2, 3, 4]



Sven Eric Panitz
Mo., 23. Okt. 1995, 12:31:09