(Integral a, Num b) => a -> b

fromIntegral :: (Integral a, Num b) => a -> b
base Prelude
general coercion from integral types
(^) :: (Num a, Integral b) => a -> b -> a
base Prelude
raise a number to a non-negative integral power
genericIndex :: Integral a => [b] -> a -> b
base Data.List
The genericIndex function is an overloaded version of !!, which accepts any Integral value as the index.
unsafeCoerce :: a -> b
base Unsafe.Coerce
genericLength :: Num i => [b] -> i
base Data.List
The genericLength function is an overloaded version of length. In particular, instead of returning an Int, it returns any type which is an instance of Num. It is, however, less efficient than length.
even :: Integral a => a -> Bool
base Prelude
odd :: Integral a => a -> Bool
base Prelude
decimal :: Integral a => a -> Builder
text Data.Text.Lazy.Builder.Int
hexadecimal :: Integral a => a -> Builder
text Data.Text.Lazy.Builder.Int
toInteger :: Integral a => a -> Integer
base Prelude
fromBool :: Num a => Bool -> a
base Foreign.Marshal.Utils
Convert a Haskell Bool to its numeric representation
fromInteger :: Num a => Integer -> a
base Prelude
($) :: (a -> b) -> a -> b
base Prelude, base Data.Function
Application operator. This operator is redundant, since ordinary application (f x) means the same as (f $ x). However, $ has low, right-associative binding precedence, so it sometimes allows parentheses to be omitted; for example: > f $ g $ h x = f (g (h x)) It is also useful in higher-order situations, such as map ($ 0) xs, or Data.List.zipWith ($) fs xs.
($!) :: (a -> b) -> a -> b
base Prelude
Strict (call-by-value) application, defined in terms of seq.
seq :: a -> b -> b
base Prelude
Evaluates its first argument to head normal form, and then returns its second argument as the result.
par :: a -> b -> b
base GHC.Conc.Sync, base GHC.Conc
par :: a -> b -> b
parallel Control.Parallel
Indicates that it may be beneficial to evaluate the first argument in parallel with the second. Returns the value of the second argument. a `par` b is exactly equivalent semantically to b. par is generally used when the value of a is likely to be required later, but not immediately. Also it is a good idea to ensure that a is not a trivial computation, otherwise the cost of spawning it in parallel overshadows the benefits obtained by running it in parallel. Note that actual parallelism is only supported by certain implementations (GHC with the -threaded option, and GPH, for now). On other implementations, par a b = b.
pseq :: a -> b -> b
base GHC.Conc.Sync, base GHC.Conc
pseq :: a -> b -> b
parallel Control.Parallel
Semantically identical to seq, but with a subtle operational difference: seq is strict in both its arguments, so the compiler may, for example, rearrange a `seq` b into b `seq` a `seq` b. This is normally no problem when using seq to express strictness, but it can be a problem when annotating code for parallelism, because we need more control over the order of evaluation; we may want to evaluate a before b, because we know that b has already been sparked in parallel with par. This is why we have pseq. In contrast to seq, pseq is only strict in its first argument (as far as the compiler is concerned), which restricts the transformations that the compiler can do, and ensures that the user can retain control of the evaluation order.
apply :: Fun a b -> (a -> b)
QuickCheck Test.QuickCheck.Function

Show more results