(最初のプロパティが同じ場合。)私は別のことで、その後1つのプロパティでソートしたいのですがは2つの比較関数を構成していますか?
sortBy
で使用する、すなわち機能2つの比較機能を構成するのはHaskellでの慣用の方法は何ですか?
考える
f :: Ord a => a -> a -> Ordering
g :: Ord a => a -> a -> Ordering
構成f
とg
がもたらすであろう:
h x y = case v of
EQ -> g x y
otherwise -> v
where v = f x y
強力かつシンプルな抽象化のための
1:
はそれをチェックアウト:あなたはインスタンスとそれを組み合わせる場合
instance Monoid b => Monoid (a -> b)
それはあなたの合成機能は、(準備)だけで判明します'Data.Monoid'では、' fxy \ 'mappend \' gxy'を得ることができます。 – Vitus