Syntax für die Liste der Bau - / Verkettung

Ich habe nur bei Haskell jetzt seit zwei Tagen, und Frage mich, was der Unterschied zwischen den beiden Funktionsdefinitionen unten sind:

Prelude> let swap (x1:x2:xs) = x2:x1:xs
Prelude> swap [1..5]
[2,1,3,4,5]
Prelude> let swap' (x1:x2:xs) = [x2] ++ [x1] ++ xs
Prelude> swap' [1..5]
[2,1,3,4,5]

Ist, was macht x2:x1:xs unterscheidet sich von [x2] ++ [x1] ++ xs ?
Bitte und danke.

Was meinst du anders? Ihre denotations sind die gleichen, also, die swap-und swap' das gleiche tun.

InformationsquelleAutor Colin Woodbury | 2011-04-13

Schreibe einen Kommentar