为什么foldl1'不能推广到可折叠?

Kev*_*vin 7 haskell typeclass fold

标题说明了一切.foldl1并且foldl'都是概括的Foldable,而foldl1'不是.这只是最近的疏忽吗?或者它是一个设计选择?

类型foldl1'

foldl1' :: (a -> a -> a) -> [a] -> a
Run Code Online (Sandbox Code Playgroud)

我希望它的类型与foldl1:

foldl1 :: Foldable t => (a -> a -> a) -> t a -> a
Run Code Online (Sandbox Code Playgroud)

我也看到它foldl1'是出口Data.List但不是Data.Foldable.也许这是相关的?

lje*_*drz 0

也许广义的形式就没有好地方住了?这背后可能还有一些性能原因,但我找不到任何相关信息。