
14 Apr
2009
14 Apr
'09
9 a.m.
Am Dienstag 14 April 2009 10:39:28 schrieb Tsunkiet Man:
Hello,
I can hardly imagine how the following code works:
cinits :: [a] -> [[a]] cinits [] = [[]] cinits (x:xs) = [] : map (x:) (cinits xs)
can someone give me a good explaination?
Perhaps it's easier to follow as a list comprehension: cinits [] = [[]] cinits (hd:tl) = [] : [ hd : rest | rest <- cinits tl ]
(I understand it a bit, but it's really hard for me to figure out how a map in a map function works.)
Thank you for your time,
Tsunkiet