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?