Maintainer | dneavesdev@pm.me |
---|---|
Safe Haskell | Safe |
Language | GHC2021 |
Antelude.Function
Description
I realized after-the-fact that the arrows (which I was taking inspiration from Elm) is essentially part of what the flow
package does.
Documentation
Reexport from Function
flip :: (a -> b -> c) -> b -> a -> c #
takes its (first) two arguments in the reverse order of flip
ff
.
>>>
flip (++) "hello" "world"
"worldhello"
Reexport from Prelude
Reexport from Prelude
seq :: forall {r :: RuntimeRep} a (b :: TYPE r). a -> b -> b infixr 0 #
The value of
is bottom if seq
a ba
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
does
not guarantee that seq
a ba
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.
(.>) :: (a -> b) -> (b -> c) -> a -> c infixr 9 Source #
Equivalent to 'flip (.)', but in an arrowhead format.
Since (>>)
is already a typeclass-locked Haskell symbol for Monad
, (.>)
was decided as was decided as it's (.)
but with a direction.