[ring restructuring and documentation
ekmett@gmail.com**20090327090844] {
hunk ./Data/Ring/Bool.hs 1
-{-# OPTIONS_GHC -fno-warn-orphans #-}
-module Data.Ring.Bool
- ( module Data.Ring
- ) where
-
-import Data.Ring
rmfile ./Data/Ring/Bool.hs
hunk ./Data/Ring/Semi.hs 1
-{-# OPTIONS_GHC -fno-warn-orphans #-}
-module Data.Semiring
- ( module Data.Seminearring
+module Data.Ring.Semi
+ ( module Data.Ring.Semi.Near
+ , Semiring
hunk ./Data/Ring/Semi.hs 6
-import Data.Seminearring
+import Data.Ring.Semi.Near
hunk ./Data/Ring/Semi/Ord.hs 1
+{-# LANGUAGE FlexibleInstances, FlexibleContexts, MultiParamTypeClasses, GeneralizedNewtypeDeriving #-}
hunk ./Data/Ring/Semi/Ord.hs 21
+-- import Control.Applicative
+import Control.Functor.Pointed
hunk ./Data/Ring/Semi/Ord.hs 27
-newtype a = Order { getOrder :: a } deriving (Eq,Ord,Read,Show,Bounded,Ord,Arbitrary)
+newtype Order a = Order { getOrder :: a } deriving (Eq,Ord,Read,Show,Bounded,Arbitrary)
hunk ./Data/Ring/Semi/Ord.hs 39
-
hunk ./Data/Ring/Semi/Ord.hs 51
-newtype Priority a = MinBound | Priority a | MaxBound deriving (Eq,Read,Show)
+
+
+
+
+
+
+data Priority a = MinBound | Priority a | MaxBound deriving (Eq,Read,Show)
hunk ./Data/Ring/Semi/Ord.hs 84
- arbitrary = frequency [ (1 ,pure MinBound)
- , (10, Priority <$> arbitrary)
- , (1 ,pure MaxBound) ]
+ arbitrary = frequency [ (1 ,return MinBound)
+ , (10, fmap Priority arbitrary)
+ , (1 ,return MaxBound) ]
hunk ./Data/Ring/Semi/Ord.hs 103
- unit = Reducer
+ unit = Priority
hunk ./Data/Ring/Semi/Ord.hs 115
- fmap f Priority a = Priority (f a)
+ fmap f (Priority a) = Priority (f a)
hunk ./Data/Ring/Sugar.hs 1
-module Data.Seminearring.Sugar
+module Data.Ring.Sugar
hunk ./Data/Ring/Sugar.hs 3
- , module Data.Seminearring
+ , module Data.Ring.Semi.Near
hunk ./Data/Ring/Sugar.hs 7
-import Data.Seminearring
+import Data.Ring.Semi.Near
hunk ./dist/doc/html/monoids/Data-Monoid-FromString.html 207
-> m => m =>
Ord a => MultiplicativeMonoid (Priority a) | | (Bounded a, Ord a) => MultiplicativeMonoid (Order a) |
|
| Ord a => Reducer (MaxPriority a) (Priority a) |
| Ord a => Reducer (MinPriority a) (Priority a) | Ord a => Reducer a (Priority a)
| (Bounded a, Ord a) => Reducer a (Order a) |
|
| Ord a => Reducer (MinPriority a) (Priority a) |
| Ord a => Reducer (MinPriority a) (Priority a) |
| Ord a => Reducer (MaxPriority a) (Priority a) |
| Ord a => Reducer (MaxPriority a) (Priority a) |
a => a =>
+
+Data.Ring.Semi.Near
addfile ./dist/doc/html/monoids/Data-Ring-Semi-Ord.html
hunk ./dist/doc/html/monoids/Data-Ring-Semi-Ord.html 1
+
+
+Data.Ring.Semi.Ord |
|
|
|
|
| Documentation |
|
| module Data.Ring.Semi |
|
|
| Constructors | | Instances | |
|
|
|
| Constructors | | MinBound | | | Priority a | | | MaxBound | |
| Instances | |
|
|
| Produced by Haddock version 2.3.0 |
addfile ./dist/doc/html/monoids/Data-Ring-Semi.html
hunk ./dist/doc/html/monoids/Data-Ring-Semi.html 1
+
+
+Data.Ring.Semi
hunk ./dist/doc/html/monoids/Data-Ring-Sugar.html 83
->module Data.Group.Sugar |
| module Data.Ringmodule Data.Ring.Semi.Nearmodule Data.Seminearringmodule Data.Ring.Semi, Data.Seminearring.Sugar, Data.Ring.Sugar | , Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Seminearring.Sugar, Data.Group.Sugar, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumgetOrderData.Ring.Semi.Ord |
| Data.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar | Data.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumMaxBound | Data.Ring.Semi.Ord |
Data.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum| MinBound | Data.Ring.Semi.Ord |
, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Ord, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Map, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.IntMap, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Categorical, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Ring, Data.Ring.FromNum| Order |
| 1 (Type/Class) | Data.Ring.Semi.Ord |
| 2 (Data Constructor) | Data.Ring.Semi.Ord |
, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumPriority
| 1 (Type/Class) | Data.Ring.Semi.Ord |
| 2 (Data Constructor) | Data.Ring.Semi.Ord |
| Data.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar | Data.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Ring, Data.Ring.FromNum
| Semiring | Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring, Data.Ring.FromNum | Data.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.SugarData.Monoid.Reducer, Data.Monoid.Reducer.Char, Data.Monoid.Reducer.With, Data.Monoid.Unit, Data.Monoid.Monad.Writer.Strict, Data.Monoid.Monad.Writer.Lazy, Data.Monoid.Monad.ST.Strict, Data.Monoid.Monad.STM, Data.Monoid.Monad.ST.Lazy, Data.Monoid.Monad.State.Strict, Data.Monoid.Monad.State.Lazy, Data.Monoid.Monad.RWS.Strict, Data.Monoid.Monad.RWS.Lazy, Data.Monoid.Monad.Reader, Data.Monoid.Monad.IO, Data.Monoid.Monad.Identity, Data.Monoid.Monad.Either, Data.Monoid.Monad.Cont, Data.Monoid.Monad, Data.Monoid.Lexical.UTF8.Decoder, Data.Monoid.Lexical.SourcePosition, Data.Monoid.Generator, Data.Monoid.Lexical.Words, Data.Monoid.Reducer.Sugar, Data.Monoid.Applicative, Data.Monoid.Generator.Combinators, Data.Monoid.Additive, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Ring, Data.Ring.FromNum, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Seminearring, Data.Seminearring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNum, Data.Ring.Sugar, Data.Monoid.Additive.Sugar, Data.Monoid.Multiplicative, Data.Monoid.Multiplicative.Sugar, Data.Monoid.Multiplicative.Transformer, Data.Ring.Semi.Near, Data.Ring.Semi, Data.Ring.Semi.Ord, Data.Ring.Sugar, Data.Group, Data.Group.Sugar, Data.Ring, Data.Ring.FromNumData.Ring.Sugar | Data.Ring.Semi |
| Data.Ring.Semi.Near | | | Data.Seminearring | Data.Ring.Semi.Ord | | Data.Seminearring.SugarData.Ring.Sugar
+
+
+
+Data/Ring/Semi/Near.hs
+
+
+
+module Data.Ring.Semi.Near
+ ( module Data.Monoid.Multiplicative
+ , Seminearring
+ ) where
+
+import Data.Monoid.Multiplicative
+import Data.FingerTree
+import Data.Monoid.FromString
+import Data.Monoid.Monad.Identity
+import Data.Monoid.Generator
+import qualified Data.Sequence as Seq
+import Data.Sequence (Seq)
+
+class (MultiplicativeMonoid m, Monoid m) => Seminearring m
+instance Monoid m => Seminearring [m]
+instance Monoid m => Seminearring (Seq m)
+instance (Measured v m, Monoid m) => Seminearring (FingerTree v m)
+instance Seminearring m => Seminearring (Identity m)
+instance Seminearring m => Seminearring (FromString m)
+
+
addfile ./dist/doc/html/monoids/src/Data-Ring-Semi-Ord.html
hunk ./dist/doc/html/monoids/src/Data-Ring-Semi-Ord.html 1
+
+
+
+
+Data/Ring/Semi/Ord.hs
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+module Data.Ring.Semi.Ord
+ ( module Data.Ring.Semi
+ , Order(Order,getOrder)
+ , Priority(MinBound,Priority,MaxBound)
+ ) where
+
+import Test.QuickCheck
+
+import Control.Functor.Pointed
+import Data.Ring.Semi
+import Data.Monoid.Ord
+import Data.Monoid.Reducer
+
+newtype Order a = Order { getOrder :: a } deriving (Eq,Ord,Read,Show,Bounded,Arbitrary)
+
+instance (Bounded a, Ord a) => Monoid (Order a) where
+ mappend = max
+ mempty = minBound
+
+instance (Bounded a, Ord a) => MultiplicativeMonoid (Order a) where
+ times = min
+ one = maxBound
+
+instance (Bounded a, Ord a) => Seminearring (Order a)
+instance (Bounded a, Ord a) => Semiring (Order a)
+instance (Bounded a, Ord a) => Reducer a (Order a) where
+ unit = Order
+
+instance Functor Order where
+ fmap f (Order a) = Order (f a)
+
+instance Pointed Order where
+ point = Order
+
+instance Copointed Order where
+ extract = getOrder
+
+
+
+
+
+
+
+data Priority a = MinBound | Priority a | MaxBound deriving (Eq,Read,Show)
+
+instance Bounded (Priority a) where
+ minBound = MinBound
+ maxBound = MaxBound
+
+instance Ord a => Ord (Priority a) where
+ MinBound <= _ = True
+ Priority _ <= MinBound = False
+ Priority a <= Priority b = a <= b
+ Priority _ <= MaxBound = True
+ MaxBound <= MaxBound = True
+ MaxBound <= _ = False
+
+ MinBound `min` _ = MinBound
+ _ `min` MinBound = MinBound
+ Priority a `min` Priority b = Priority (a `min` b)
+ u `min` MaxBound = u
+ MaxBound `min` v = v
+
+ MinBound `max` v = v
+ u `max` MinBound = u
+ Priority a `max` Priority b = Priority (a `max` b)
+ _ `max` MaxBound = MaxBound
+ MaxBound `max` _ = MaxBound
+
+instance Arbitrary a => Arbitrary (Priority a) where
+ arbitrary = frequency [ (1 ,return MinBound)
+ , (10, fmap Priority arbitrary)
+ , (1 ,return MaxBound) ]
+ coarbitrary MinBound = variant 0
+ coarbitrary (Priority a) = variant 1 . coarbitrary a
+ coarbitrary MaxBound = variant 2
+
+instance Ord a => Monoid (Priority a) where
+ mappend = max
+ mempty = minBound
+
+instance Ord a => MultiplicativeMonoid (Priority a) where
+ times = min
+ one = maxBound
+
+instance Ord a => Seminearring (Priority a)
+instance Ord a => Semiring (Priority a)
+
+instance Ord a => Reducer a (Priority a) where
+ unit = Priority
+
+instance Ord a => Reducer (MinPriority a) (Priority a) where
+ unit (MinPriority Nothing) = MaxBound
+ unit (MinPriority (Just x)) = Priority x
+
+instance Ord a => Reducer (MaxPriority a) (Priority a) where
+ unit (MaxPriority Nothing) = MinBound
+ unit (MaxPriority (Just x)) = Priority x
+
+instance Functor Priority where
+ fmap _ MaxBound = MaxBound
+ fmap f (Priority a) = Priority (f a)
+ fmap _ MinBound = MinBound
+
+instance Pointed Priority where
+ point = Priority
+
+
addfile ./dist/doc/html/monoids/src/Data-Ring-Semi.html
hunk ./dist/doc/html/monoids/src/Data-Ring-Semi.html 1
+
+
+
+
+Data/Ring/Semi.hs
+
+
+
+module Data.Ring.Semi
+ ( module Data.Ring.Semi.Near
+ , Semiring
+ ) where
+
+import Data.Ring.Semi.Near
+
+class Seminearring a => Semiring a
+
+
+
hunk ./dist/doc/html/monoids/src/Data-Ring-Sugar.html 11
- , module Data.Group.Sugar
- , module Data.Ring
- ) where
-
-import Data.Monoid.Multiplicative.Sugar
-import Data.Group.Sugar
-import Data.Ring
-
+ , module Data.Ring.Semi.Near
+ ) where
+
+import Data.Monoid.Multiplicative.Sugar
+import Data.Ring.Semi.Near
hunk ./dist/doc/html/monoids/src/Data-Ring.html 12
- , module Data.Seminearring
+ , module Data.Ring.Semi
hunk ./dist/doc/html/monoids/src/Data-Ring.html 16
-import Data.Seminearring
+import Data.Ring.Semi
hunk ./dist/doc/html/monoids/src/Data-Ring.html 18
-class (Group a, Seminearring a) => Ring a
+class (Group a, Semiring a) => Ring a
hunk ./dist/doc/html/monoids/src/Data-Ring.html 20
-instance Monoid Bool where
- mempty = False
- mappend = (||)
-
-instance Group Bool where
- gnegate = not
+
+
+
+instance Monoid Bool where
+ mempty = False
+ a `mappend` b = (a || b) && not (a && b)
hunk ./dist/doc/html/monoids/src/Data-Ring.html 27
-instance MultiplicativeMonoid Bool where
- one = True
- times = (&&)
-
-instance Seminearring Bool
-
-instance Ring Bool
+instance Group Bool where
+ gnegate = not
+
+instance MultiplicativeMonoid Bool where
+ one = True
+ times = (&&)
+
+instance Seminearring Bool
+instance Semiring Bool
+instance Ring Bool
hunk ./monoids.cabal 17
- build-depends: base >= 4, text, fingertree, bytestring, category-extras, parallel, containers, mtl, stm, bitset
+ build-depends: base >= 4, text, fingertree, bytestring, category-extras, parallel, containers, mtl, stm, bitset, QuickCheck
hunk ./monoids.cabal 59
+ Data.Ring.Semi
+ Data.Ring.Semi.Near
+ Data.Ring.Semi.Ord
hunk ./monoids.cabal 64
- Data.Seminearring
- Data.Seminearring.Sugar
}
|