I need to modify Haskell's head : [a] -> a to head A : List A -> Maybe A
head : [a] -> a
head A : List A -> Maybe A