class (Eq a) => Ord a where
compare :: a -> a -> Ordering
(<), (<=), (>=), (>) :: a -> a -> Bool
max, min :: a -> a -> a
-- Minimal complete definition:
-- (<=) or compare
-- Using compare can be more efficient for complex types.
compare x y
| x == y = EQ
| x <= y = LT
| otherwise = GT
x <= y = compare x y /= GT
x < y = compare x y == LT
x >= y = compare x y /= LT
x > y = compare x y == GT
-- note that (min x y, max x y) = (x,y) or (y,x)
max x y
| x >= y = x
| otherwise = y
min x y
| x < y = x
| otherwise = y
instance Ord Char where
c <= c' = fromEnum c <= fromEnum c'
instance Ord Int where
...
instance Ord Integer where
...
instance Ord Float where
...
instance Ord Double where
...
_____________________________________________
Related sites:
-
dotNet Slackers - Your latest resource for ASP.NET
-
Dotnet Spider - Outsourcing and Offshore software development in India
-
XML - Xselerator, XSL Editor, BizTalk Utilities, XML Tutorials, Learn XML
-
Planet Source Code - The largest public source code database on the Internet
|
|
|