Vorrei ordinare per una proprietà e poi da un altro (se la prima proprietà è la stessa.)che compone due funzioni di confronto?
Nei il modo idiomatica in Haskell di comporre due funzioni di confronto, cioè una funzione utilizzata con sortBy
?
Dato
f :: Ord a => a -> a -> Ordering
g :: Ord a => a -> a -> Ordering
composizione f
e g
sarebbe resa:
h x y = case v of
EQ -> g x y
otherwise -> v
where v = f x y
Utilizzando 'Data.Monoid', puoi ottenere:' fxy \ 'mappend \' gxy'. – Vitus