Data.Ord

module Data.Ord(Ord(..),Ordering(..),Down(..),comparing) where

comparing p x y = compare (p x) (p y)

newtype Down a = Down a deriving (Eq,Show,Read)

instance Ord a => Ord (Down a) where
  compare (Down x) (Down y) = compare y x