所以,我不知道如何正式调用这个问题,但我想知道为什么我的Haskell实现(Haskell Platform,ghci)不能产生这样的函数:
reverse.(foldr (:))
我希望它属于[a] -> [a] -> [a]
类型,就像foldr (:)
一样。
现在,毕竟,
reverse.(foldr (:) [])
的类型为[a] -> [a]
,就像foldr (:) []
一样,所以抽象出两个参数似乎存在一些问题。
是否有一个编译器/解释器标志让它足够天真地接近它,或者我试图做的只是明显模糊不清?