我试图理解为什么类型fun g x = ys where ys = [x] ++ filter (curry g x) ys的((a, a) -> Bool) -> a -> [a].
fun g x = ys where ys = [x] ++ filter (curry g x) ys
((a, a) -> Bool) -> a -> [a]
我明白那个:
filter :: (a -> Bool) -> [a] -> [a] 然后 curry :: ((a, b) -> c) -> a -> b -> c
filter :: (a -> Bool) -> [a] -> [a]
curry :: ((a, b) -> c) -> a -> b -> c
但我不明白如何继续.
haskell types unification
haskell ×1
types ×1
unification ×1