sólo he estado en Haskell desde hace dos días, y se preguntaba cuál es la diferencia entre las dos definiciones de las funciones siguientes son:Sintaxis para la construcción de la lista/concatenación
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]
Es decir, lo que hace que x2: x1 : xs diferente de [x2] ++ [x1] ++ xs? Por favor y gracias.
¿Qué quiere decir diferente? Sus denotaciones son las mismas, es decir, swap y swap 'hacen lo mismo. – augustss