view 98076 @ 4349:f1a897d448a5

<oerjan> rm perpetual motion machine
author HackBot
date Sat, 18 Jan 2014 01:06:28 +0000
parents b70362a4c382
children
line wrap: on
line source

-- Hi everyone!
-- Could please someone explain me an output of the function:

splitEvery n list = first : ( splitEvery n rest )
    where (first, rest) = splitAt n list

-- it returns a lis of lists splitEvery :: Int -> [a] -> [[a]]
-- But I don't understand how it works, why it returns list of lists.
-- splitAt returns TUPLE and "first" is somehow joined to it.