Description

This module contains any objects relating to order theory

Synopsis

# Documentation

newtype WithPreludeOrd a Source

This wrapper let's us convert between SubHask's Ord type and the Prelude's. See the "sort" function below for an example.

Constructors

 WithPreludeOrd FieldsunWithPreludeOrd :: a

Instances

 Eq a => Eq (WithPreludeOrd a) Source Ord a => Ord (WithPreludeOrd a) Source Read a0 => Read (WithPreludeOrd a) Source Show a => Show (WithPreludeOrd a) Source Arbitrary a0 => Arbitrary (WithPreludeOrd a) Source Source NFData a0 => NFData (WithPreludeOrd a) Source IsMutable a0 => IsMutable (WithPreludeOrd a) Source (Metric a0, HasScalar a0, Eq_ a0, Boolean (Logic a0), (~) * (Logic (Scalar a0)) (Logic a0)) => Metric (WithPreludeOrd a) Source (Ring a0, Rng a0, Rig a0) => Ring (WithPreludeOrd a) Source (Rig a0, Monoid a0, Rg a0) => Rig (WithPreludeOrd a) Source (Rg a0, Abelian a0, Monoid a0) => Rg (WithPreludeOrd a) Source (Abelian a0, Semigroup a0) => Abelian (WithPreludeOrd a) Source (Group a0, Cancellative a0, Monoid a0) => Group (WithPreludeOrd a) Source (Cancellative a0, Semigroup a0) => Cancellative (WithPreludeOrd a) Source (Monoid a0, Semigroup a0) => Monoid (WithPreludeOrd a) Source (Semigroup a0, IsMutable a0) => Semigroup (WithPreludeOrd a) Source (Boolean a0, Complemented a0, Heyting a0) => Boolean (WithPreludeOrd a) Source (Heyting a0, Bounded a0) => Heyting (WithPreludeOrd a) Source (Complemented a0, Bounded a0) => Complemented (WithPreludeOrd a) Source (Bounded a0, Lattice_ a0, MinBound_ a0) => Bounded (WithPreludeOrd a) Source (Ord_ a0, Lattice_ a0) => Ord_ (WithPreludeOrd a) Source (Graded a0, Lattice a0) => Graded (WithPreludeOrd a) Source (Enum a0, Graded a0, Ord_ a0) => Enum (WithPreludeOrd a) Source (Lattice_ a0, POrd_ a0) => Lattice_ (WithPreludeOrd a) Source (MinBound_ a0, POrd_ a0) => MinBound_ (WithPreludeOrd a) Source (POrd_ a0, Eq_ a0) => POrd_ (WithPreludeOrd a) Source Eq_ a0 => Eq_ (WithPreludeOrd a) Source data Mutable m (WithPreludeOrd a0) = Mutable_WithPreludeOrd (Mutable m a) Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Elem (WithPreludeOrd a0) = Elem a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Scalar (WithPreludeOrd a0) = Scalar a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source FIXME: for some reason, our deriving mechanism doesn't work on Show here; It causes's Set's show to enter an infinite loop type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Actor (WithPreludeOrd a0) = Actor a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source type Logic (WithPreludeOrd a0) = Logic a0 Source

sort :: Ord a => [a] -> [a] Source

A wrapper around the Prelude's sort function.

FIXME: We should put this in the container hierarchy so we can sort any data type

shuffle :: (Eq a, MonadRandom m) => [a] -> m [a] Source