My experience with IaC output is that it's so broken to not only be unhelpful but actively harmful.
splitAt :: Eq a => a -> [a] -> [[a]]
splitAt x xs = ...
To clarify, I assumed that by using the constraint `Eq a` and the name splitAt there was no need for extra clarification in the names of the parameters but apparently I was wrong.