我正在学习Haskell。我有一个列表,看起来像这样: data TwoValueList a = Empty | Node a a (TwoValueList a) 我希望创建这个Foldable,这样我就可以进行如下计算:f b Empty = b
foldr f b (Node a rest) = f a (foldr f b rest) 但是,如果一个节点中有两个值,我就无法确定类型,因为f接受a和b,但我必须将f应用于TwoValueLi
我正在做Haskell编程的练习10.10,问题是使用myMaximumBy编写一个foldr函数myMaximumBy= undefinedmyMaximumBy :: (a -> a -> Ordering) -> [a] -> a
myMaximumBy f = foldr (\x y -> iff x y == LT then y