
20 Dec
2013
20 Dec
'13
1 p.m.
I created my own drop' function like this: drop' :: Int -> [a] -> [a] drop' 0 xs = xs drop' n [] = [] drop' n (x:xs) = drop' (n - 1) xs But in the Haskell book I am reading it is written like this: drop' :: Int -> [a] -> [a] drop' 0 xs = xs drop' (n + 1) [] = [] drop' (n + 1) (x:xs) = drop' n xs My version seems to work but I am concerned about my third line (drop' n [] = []). Is that a problem? Why does this author use n + 1 as a parameter as opposed to n - 1 like I do in body? Or does it make no difference?