Если прям подробного обзора хочешь, гугли статью Theorems for Free!
А так, на пальцах, какая функция проще (считаем, что у нас тотальный, чистый ЯП и мы знаем только тип функции).
Первая с конкретным типом, вторая с дженериком:
something :: Int -> Int
whatever :: a -> a
С точки зрения количества сущностей, которая эта абстракция порождает, проще одна реализация
С точки зрения использования конечно проще абстракция, чем несколько явных функций