tas, é possível isolar o primeiro elemento, mas é obrigatório usar parênteses neste caso por conta do :_

tell :: (Show a) => [a] -> String
tell [] = "The list is empty"
tell (x:[]) = "The list has one 
tell :: (Show a) => [a] -> String
tell [] = "The list is empty"
tell [] = "The list is empty"