Copyright | (c) Erich Gut |
---|---|
License | BSD3 |
Maintainer | zerich.gut@gmail.com |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
OAlg.Prelude
Description
To avoid ambiguity for the algebraic operators on should exclude the standard Prelude and use this one instead.
Synopsis
- module OAlg.Category.Applicative
- module OAlg.Category.Definition
- module OAlg.Category.Proposition
- module OAlg.Data.Statement
- module OAlg.Data.X
- module OAlg.Data.Validable
- module OAlg.Control.Validate
- module OAlg.Data.Boolean
- module OAlg.Data.Equal
- module OAlg.Data.Maybe
- module OAlg.Data.Show
- module OAlg.Data.Number
- module OAlg.Entity.Definition
- module OAlg.Structure.Definition
- module OAlg.Data.Dualisable
- module OAlg.Data.Opposite
- module OAlg.Data.Ord
- class Bounded a where
- data IO a
- putStrLn :: String -> IO ()
- seq :: forall {r :: RuntimeRep} a (b :: TYPE r). a -> b -> b
- undefined :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => a
- error :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => [Char] -> a
- module OAlg.Control.Exception
Category
module OAlg.Category.Applicative
module OAlg.Category.Definition
module OAlg.Category.Proposition
Validating
module OAlg.Data.Statement
module OAlg.Data.X
module OAlg.Data.Validable
module OAlg.Control.Validate
Data
module OAlg.Data.Boolean
module OAlg.Data.Equal
module OAlg.Data.Maybe
module OAlg.Data.Show
module OAlg.Data.Number
Entity
module OAlg.Entity.Definition
Structure
module OAlg.Structure.Definition
Dual
module OAlg.Data.Dualisable
module OAlg.Data.Opposite
Ord
module OAlg.Data.Ord
Additionals
Some additional definition from the standard Prelude.
Bounded
The Bounded
class is used to name the upper and lower limits of a
type. Ord
is not a superclass of Bounded
since types that are not
totally ordered may also have upper and lower bounds.
The Bounded
class may be derived for any enumeration type;
minBound
is the first constructor listed in the data
declaration
and maxBound
is the last.
Bounded
may also be derived for single-constructor datatypes whose
constituent types are in Bounded
.
Instances
Bounded All | Since: base-2.1 |
Bounded Any | Since: base-2.1 |
Bounded CBool | |
Bounded CChar | |
Bounded CInt | |
Bounded CIntMax | |
Bounded CIntPtr | |
Bounded CLLong | |
Bounded CLong | |
Bounded CPtrdiff | |
Bounded CSChar | |
Bounded CShort | |
Bounded CSigAtomic | |
Defined in Foreign.C.Types | |
Bounded CSize | |
Bounded CUChar | |
Bounded CUInt | |
Bounded CUIntMax | |
Bounded CUIntPtr | |
Bounded CULLong | |
Bounded CULong | |
Bounded CUShort | |
Bounded CWchar | |
Bounded Associativity | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
Bounded DecidedStrictness | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
Bounded SourceStrictness | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
Bounded SourceUnpackedness | Since: base-4.9.0.0 |
Defined in GHC.Generics | |
Bounded Int16 | Since: base-2.1 |
Bounded Int32 | Since: base-2.1 |
Bounded Int64 | Since: base-2.1 |
Bounded Int8 | Since: base-2.1 |
Bounded GeneralCategory | Since: base-2.1 |
Defined in GHC.Unicode | |
Bounded Word16 | Since: base-2.1 |
Bounded Word32 | Since: base-2.1 |
Bounded Word64 | Since: base-2.1 |
Bounded Word8 | Since: base-2.1 |
Bounded Extension | |
Bounded Ordering | Since: base-2.1 |
Bounded Stochastic Source # | |
Defined in OAlg.Control.Validate | |
Bounded Verbosity Source # | |
Bounded Direction Source # | |
Bounded Side Source # | |
Bounded Site Source # | |
Bounded RdcState Source # | |
Bounded Valid Source # | |
Bounded Symbol Source # | |
Bounded Perspective Source # | |
Defined in OAlg.Limes.Perspective | |
Bounded () | Since: base-2.1 |
Bounded Bool | Since: base-2.1 |
Bounded Char | Since: base-2.1 |
Bounded Int | Since: base-2.1 |
Bounded Levity | Since: base-4.16.0.0 |
Bounded VecCount | Since: base-4.10.0.0 |
Bounded VecElem | Since: base-4.10.0.0 |
Bounded Word | Since: base-2.1 |
Bounded a => Bounded (Identity a) | Since: base-4.9.0.0 |
Bounded a => Bounded (Down a) | Swaps Since: base-4.14.0.0 |
Bounded a => Bounded (First a) | Since: base-4.9.0.0 |
Bounded a => Bounded (Last a) | Since: base-4.9.0.0 |
Bounded a => Bounded (Max a) | Since: base-4.9.0.0 |
Bounded a => Bounded (Min a) | Since: base-4.9.0.0 |
Bounded m => Bounded (WrappedMonoid m) | Since: base-4.9.0.0 |
Defined in Data.Semigroup | |
Bounded a => Bounded (Dual a) | Since: base-2.1 |
Bounded a => Bounded (Product a) | Since: base-2.1 |
Bounded a => Bounded (Sum a) | Since: base-2.1 |
Bounded x => Bounded (Id x) Source # | |
Bounded a => Bounded (a) | |
Bounded (Proxy t) | Since: base-4.7.0.0 |
(Bounded a, Bounded b) => Bounded (a, b) | Since: base-2.1 |
Bounded a => Bounded (Const a b) | Since: base-4.9.0.0 |
(Applicative f, Bounded a) => Bounded (Ap f a) | Since: base-4.12.0.0 |
a ~ b => Bounded (a :~: b) | Since: base-4.7.0.0 |
(Bounded a, Bounded b, Bounded c) => Bounded (a, b, c) | Since: base-2.1 |
a ~~ b => Bounded (a :~~: b) | Since: base-4.10.0.0 |
(Bounded a, Bounded b, Bounded c, Bounded d) => Bounded (a, b, c, d) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e) => Bounded (a, b, c, d, e) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f) => Bounded (a, b, c, d, e, f) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g) => Bounded (a, b, c, d, e, f, g) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h) => Bounded (a, b, c, d, e, f, g, h) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i) => Bounded (a, b, c, d, e, f, g, h, i) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j) => Bounded (a, b, c, d, e, f, g, h, i, j) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k) => Bounded (a, b, c, d, e, f, g, h, i, j, k) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m, Bounded n) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m, n) | Since: base-2.1 |
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m, Bounded n, Bounded o) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) | Since: base-2.1 |
IO
A value of type
is a computation which, when performed,
does some I/O before returning a value of type IO
aa
.
There is really only one way to "perform" an I/O action: bind it to
Main.main
in your program. When your program is run, the I/O will
be performed. It isn't possible to perform I/O from an arbitrary
function, unless that function is itself in the IO
monad and called
at some point, directly or indirectly, from Main.main
.
IO
is a monad, so IO
actions can be combined using either the do-notation
or the >>
and >>=
operations from the Monad
class.
Instances
seq
seq :: forall {r :: RuntimeRep} a (b :: TYPE r). a -> b -> b infixr 0 #
The value of seq a b
is bottom if a
is bottom, and
otherwise equal to b
. In other words, it evaluates the first
argument a
to weak head normal form (WHNF). seq
is usually
introduced to improve performance by avoiding unneeded laziness.
A note on evaluation order: the expression seq a b
does
not guarantee that a
will be evaluated before b
.
The only guarantee given by seq
is that the both a
and b
will be evaluated before seq
returns a value.
In particular, this means that b
may be evaluated before
a
. If you need to guarantee a specific order of evaluation,
you must use the function pseq
from the "parallel" package.
Undefined
undefined :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => a #
error :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => [Char] -> a #
error
stops execution and displays an error message.
Exception
module OAlg.Control.Exception