对函数定义的部分使用无点样式

Using point free style for parts of a function definition

给定这个函数(顺便说一句,我应该说它是由案例定义的吗?我如何引用这样定义的函数?),

f :: Int -> Int -> Int
f 0 x = x
f x _ = x

我在想这是什么原因,如果有,为什么我不能这样写:

f :: Int -> Int -> Int
f 0 x = x
f = const

的确,在尝试使用它时,我收到了这个错误

    Equations for ‘f’ have different numbers of arguments

这对我来说似乎很明显,因为 f = constf 接受两个参数(或任意数量的参数,fwiw;好吧,所有函数都接受一个参数并返回一个函数,对吧?)。

没有做不到的根本原因。但它使语言复杂化,并且没有令人信服的理由去做。