Search results

compose2 :: forall a b x y. (a -> b) -> (x -> y -> a) -> x -> y -> b

\f g x y -> f (g x y)

P purescript-point-free M PointFree
composeSecondFlipped :: forall a b x y. (y -> b) -> (x -> b -> a) -> x -> y -> a
P purescript-point-free M PointFree
over2 :: forall t a s b. Newtype t a => Newtype s b => (a -> t) -> (a -> a -> b) -> t -> t -> s

Lifts a binary function to operate over newtypes.

newtype Meter = Meter Int
derive newtype instance newtypeMeter :: Newtype Meter _
newtype SquareMeter = SquareMeter Int
derive newtype instance newtypeSquareMeter :: Newtype SquareMeter _

area :: Meter -> Meter -> SquareMeter
area = over2 Meter (*)

The above example also demonstrates that the return type is polymorphic here too.

P purescript-newtype M Data.Newtype
under2 :: forall t a s b. Newtype t a => Newtype s b => (a -> t) -> (t -> t -> s) -> a -> a -> b

The opposite of over2: lowers a binary function that operates on Newtyped values to operate on the wrapped value instead.

P purescript-newtype M Data.Newtype
traverse :: forall f t a. Coercible (f a) (f t) => Newtype t a => (a -> t) -> (a -> f a) -> t -> f t

Similar to the function from the Traversable class, but operating within a newtype instead.

P purescript-newtype M Data.Newtype
applySecondFlipped :: forall x y a. x -> (y -> x -> a) -> y -> a
P purescript-point-free M PointFree
compose :: forall c b a. (b -> c) -> (a -> b) -> (a -> c)

Returns a new function that calls the first function with the result of calling the second.

let addTwo x = x + 2
let double x = x * 2
let addTwoThenDouble x = addTwo :compose double
addTwoThenDouble 3 -- 10

This is function composition.

P purescript-neon M Neon.Primitive.Function
finch :: forall c b a. a -> (c -> a -> b) -> c -> b

F combinator - finch

ETTET

Λ a b c . a → b → (b → a → c) → c

λ x y f . f y x

P purescript-birds M Aviary.Birds
robin :: forall c b a. a -> (b -> a -> c) -> b -> c

R combinator - robin

BBT

Λ a b c . a → (b → a → c) → b → c

λ x f y . f y x

P purescript-birds M Aviary.Birds
over :: forall t a s b. Newtype t a => Newtype s b => (a -> t) -> (a -> b) -> t -> s

Lifts a function operate over newtypes. This can be used to lift a function to manipulate the contents of a single newtype, somewhat like map does for a Functor:

newtype Label = Label String
derive instance newtypeLabel :: Newtype Label _

toUpperLabel :: Label -> Label
toUpperLabel = over Label String.toUpper

But the result newtype is polymorphic, meaning the result can be returned as an alternative newtype:

newtype UppercaseLabel = UppercaseLabel String
derive instance newtypeUppercaseLabel :: Newtype UppercaseLabel _

toUpperLabel' :: Label -> UppercaseLabel
toUpperLabel' = over Label String.toUpper
P purescript-newtype M Data.Newtype
under :: forall t a s b. Newtype t a => Newtype s b => (a -> t) -> (t -> s) -> a -> b

The opposite of over: lowers a function that operates on Newtyped values to operate on the wrapped value instead.

newtype Degrees = Degrees Number
derive instance newtypeDegrees :: Newtype Degrees _

newtype NormalDegrees = NormalDegrees Number
derive instance newtypeNormalDegrees :: Newtype NormalDegrees _

normaliseDegrees :: Degrees -> NormalDegrees
normaliseDegrees (Degrees deg) = NormalDegrees (deg % 360.0)

asNormalDegrees :: Number -> Number
asNormalDegrees = under Degrees normaliseDegrees

As with over the Newtype is polymorphic, as illustrated in the example above - both Degrees and NormalDegrees are instances of Newtype, so even though normaliseDegrees changes the result type we can still put a Number in and get a Number out via under.

P purescript-newtype M Data.Newtype
memoCompose :: forall a b c. (a -> b) -> (b -> c) -> a -> c

Memoize the composition of two functions

P purescript-pha M Pha.Util
foldingWithIndex :: forall f i x y z. FoldingWithIndex f i x y z => f -> i -> x -> y -> z
P purescript-heterogeneous M Heterogeneous.Folding
mapmap :: forall f g a b. Functor f => Functor g => (a -> b) -> f (g a) -> f (g b)
P purescript-sequences M Data.Sequence.Internal
mmap :: forall a b f g. Functor f => Functor g => (a -> b) -> f (g a) -> f (g b)
P purescript-mason-prelude M MasonPrelude.Functor.Nested
foldingWithIndex :: forall f i x y z. FoldingWithIndex f i x y z => f -> i -> x -> y -> z
P purescript-heterogenous M Heterogenous.Folding
new3 :: forall b a3 a2 a1 o. o -> a1 -> a2 -> a3 -> b
P purescript-ffi-utils M FFI.Util
worbler :: forall b a. b -> (b -> b -> a) -> a

W1 combinator - converse warbler

CW

Λ a b . a → (a → a → b) → b

λ x f = f x x

P purescript-birds M Aviary.Birds
for :: forall a b m t. Applicative m => Traversable t => t a -> (a -> m b) -> m (t b)

A version of traverse with its arguments flipped.

This can be useful when running an action written using do notation for every element in a data structure:

For example:

for [1, 2, 3] \n -> do
  print n
  return (n * n)
P purescript-foldable-traversable M Data.Traversable
mkQ :: forall a b r. Typeable a => Typeable b => r -> (b -> r) -> a -> r
P purescript-ajnsit-typeable M Data.Data
bind :: forall m a b. Bind m => m a -> (a -> m b) -> m b
P purescript-prelude M Control.Bind
discard :: forall a f b. Discard a => Bind f => f a -> (a -> f b) -> f b
P purescript-prelude M Control.Bind
catchError :: forall e m a. MonadError e m => m a -> (e -> m a) -> m a
P purescript-transformers M Control.Monad.Error.Class
apApplyFlipped :: forall f b a. Apply f => f a -> f (a -> b) -> f b
P purescript-optparse M Options.Applicative.Internal.Utils
applyOp :: forall event a b. Applicative event => event a -> event (a -> b) -> event b
P purescript-hyrule M FRP.Event.Class
sampleOnLeft :: forall event a b. IsEvent event => event a -> event (a -> b) -> event b
P purescript-hyrule M FRP.Event.Class
sampleOnRight :: forall event a b. IsEvent event => event a -> event (a -> b) -> event b
P purescript-hyrule M FRP.Event.Class
sampleOn :: forall event b a. IsEvent event => event a -> event (a -> b) -> event b
P purescript-event M FRP.Event.Class
bind' :: forall v1 v0 m c. HasBind c m => ObjectOf c v0 => ObjectOf c (m v1) => Restrictable Function c => m v0 -> (v0 -> (m v1)) -> m v1
P purescript-subcategory M Control.Subcategory.Functor.HasBind
bind :: forall c b a. HasChain a => a b -> (b -> a c) -> a c

A version of chain with the arguments flipped. This is provided only to support desugaring do notation. It is not recommended to use explicitly.

P purescript-neon M Neon.Helper
controlError :: forall f g e a. ErrorControl f g e => f a -> (e -> g a) -> g a
P purescript-errorcontrol M Error.Control
fairConjunction :: forall b a m. MonadLogic m => m a -> (a -> m b) -> m b
P purescript-logic M Control.Monad.Logic.Class
hummingbird :: forall m b a. Bind m => m a -> (a -> m b) -> m b

H combinator - hummingbird

BW(BC)

Λ a b c (a → b → a → c) → a → b → c

λ f x y . f x y x

P purescript-birds M Aviary.Birds
when :: forall b a m. MonadLogic m => m a -> (a -> m b) -> m b
P purescript-logic M Control.Monad.Logic.Class
apply :: forall a b. (a -> b) -> a -> b

Applies a function to an argument. This is primarily used as the operator ($) which allows parentheses to be omitted in some cases, or as a natural way to apply a chain of composed functions to a value.

P purescript-prelude M Data.Function
liftA1 :: forall f a b. Applicative f => (a -> b) -> f a -> f b

liftA1 provides a default implementation of (<$>) for any Applicative functor, without using (<$>) as provided by the Functor-Applicative superclass relationship.

liftA1 can therefore be used to write Functor instances as follows:

instance functorF :: Functor F where
  map = liftA1
P purescript-prelude M Control.Applicative
liftM1 :: forall m a b. Monad m => (a -> b) -> m a -> m b

liftM1 provides a default implementation of (<$>) for any Monad, without using (<$>) as provided by the Functor-Monad superclass relationship.

liftM1 can therefore be used to write Functor instances as follows:

instance functorF :: Functor F where
  map = liftM1
P purescript-prelude M Control.Monad
map :: forall f a b. Functor f => (a -> b) -> f a -> f b
P purescript-prelude M Data.Functor
un :: forall t a. Newtype t a => (a -> t) -> t -> a

Given a constructor for a Newtype, this returns the appropriate unwrap function.

P purescript-newtype M Data.Newtype
all :: forall a b f. Foldable f => HeytingAlgebra b => (a -> b) -> f a -> b

all f is the same as and <<< map f; map a function over the structure, and then get the conjunction of the results.

P purescript-foldable-traversable M Data.Foldable
any :: forall a b f. Foldable f => HeytingAlgebra b => (a -> b) -> f a -> b

any f is the same as or <<< map f; map a function over the structure, and then get the disjunction of the results.

P purescript-foldable-traversable M Data.Foldable
foldMap :: forall f a m. Foldable f => Monoid m => (a -> m) -> f a -> m
P purescript-foldable-traversable M Data.Foldable
foldMap1 :: forall t a m. Foldable1 t => Semigroup m => (a -> m) -> t a -> m
P purescript-foldable-traversable M Data.Semigroup.Foldable
foldMap1DefaultL :: forall t m a. Foldable1 t => Functor t => Semigroup m => (a -> m) -> t a -> m

A default implementation of foldMap1 using foldl1.

Note: when defining a Foldable1 instance, this function is unsafe to use in combination with foldl1Default.

P purescript-foldable-traversable M Data.Semigroup.Foldable
foldMap1DefaultR :: forall t m a. Foldable1 t => Functor t => Semigroup m => (a -> m) -> t a -> m

A default implementation of foldMap1 using foldr1.

Note: when defining a Foldable1 instance, this function is unsafe to use in combination with foldr1Default.

P purescript-foldable-traversable M Data.Semigroup.Foldable
foldMapDefault :: forall i f a m. FoldableWithIndex i f => Monoid m => (a -> m) -> f a -> m

A default implementation of foldMap using foldMapWithIndex

P purescript-foldable-traversable M Data.FoldableWithIndex
foldMapDefaultL :: forall f a m. Foldable f => Monoid m => (a -> m) -> f a -> m

A default implementation of foldMap using foldl.

Note: when defining a Foldable instance, this function is unsafe to use in combination with foldlDefault.

P purescript-foldable-traversable M Data.Foldable
foldMapDefaultR :: forall f a m. Foldable f => Monoid m => (a -> m) -> f a -> m

A default implementation of foldMap using foldr.

Note: when defining a Foldable instance, this function is unsafe to use in combination with foldrDefault.

P purescript-foldable-traversable M Data.Foldable
mapDefault :: forall i f a b. FunctorWithIndex i f => (a -> b) -> f a -> f b

A default implementation of Functor's map in terms of mapWithIndex

P purescript-foldable-traversable M Data.FunctorWithIndex
cmap :: forall f a b. Contravariant f => (b -> a) -> f a -> f b
P purescript-contravariant M Data.Functor.Contravariant
cmapFlipped :: forall a b f. Contravariant f => f a -> (b -> a) -> f b

cmapFlipped is cmap with its arguments reversed.

P purescript-contravariant M Data.Functor.Contravariant
asks :: forall e1 e2 w a. ComonadAsk e1 w => (e1 -> e2) -> w a -> e2

Get a value which depends on the environment.

P purescript-transformers M Control.Comonad.Env.Class
tracks :: forall w a t. ComonadTraced t w => (a -> t) -> w a -> a

Extracts a value at a relative position which depends on the current value.

P purescript-transformers M Control.Comonad.Traced.Class
squigglyMap :: forall f a b. Functor f => (a -> b) -> f a -> f b
P purescript-signal M Signal
memoize :: forall a b. Tabulate a => (a -> b) -> a -> b

Memoize a function of one argument

P purescript-open-memoize M Data.Function.Memoize
delay :: forall m a b. Delay m => a -> (a -> m b) -> m b
P purescript-ffi-simple M FFI.Simple.Functions
map :: forall p q a b. Dissect p q => (a -> b) -> p a -> p b

A tail-recursive map operation, implemented in terms of Dissect.

P purescript-dissect M Dissect.Class
memoize :: forall b a. Tabulate a => (a -> b) -> a -> b

Memoize a function of one argument

P purescript-memoize M Data.Function.Memoize
over :: forall s t a b @sym lenses. IsSymbol sym => ParseSymbol sym lenses => ConstructBarlow lenses Function s t a b => (a -> b) -> s -> t
P purescript-barlow-lens M Data.Lens.Barlow.Helpers
applicator :: forall b a. (a -> b) -> a -> b

A combinator - applicator

Λ a b . (a → b) → a → b

λ f x . f x

P purescript-birds M Aviary.Birds
defaultFilter :: forall a h f. BooleanEq h => Applicative f => Foldable f => Monoid (f a) => (a -> h) -> f a -> f a
P purescript-filterables M Data.Filterable
filter :: forall f h a. Filterable f => BooleanEq h => (a -> h) -> f a -> f a
P purescript-filterables M Data.Filterable
foldMap :: forall a b s. Convert s (Statements a) => Monoid b => (a -> b) -> s -> b
P purescript-qualified-do M QualifiedDo.FoldMap
idstar :: forall b a. (a -> b) -> a -> b

I* combinator - id bird once removed

S(SK)

Λ a b . (a → b) → a → b

λ f x . f x

P purescript-birds M Aviary.Birds
intercept :: forall a e g f. ErrorControl f g e => f a -> (e -> a) -> g a
P purescript-errorcontrol M Error.Control
liftF :: forall b a f. Applicative f => (a -> b) -> a -> f b
P purescript-simple-parser M Text.Parsing.Util
local :: forall a b r. (a -> b) -> (Ask b => r) -> (Ask a => r)

Run a function over an implicit parameter

Note: Be careful while using this to map over the value without updating the type.

-- evaluates to `1`, not `2`
provide 1 (local ((*) 2) (ask @Int))
P purescript-ask M Control.Ask
map :: forall a c b. HasMap a => (b -> c) -> a b -> a c
P purescript-neon M Neon.Class.HasMap
map :: forall f a b. Functor f => (a -> b) -> f a -> f b
P purescript-qualified-do M QualifiedDo.ParApply
mapUndefined :: forall b a. (a -> b) -> a -> b
P purescript-reactnative M ReactNative.Internal.Undefinable
memoize :: forall a b. (a -> b) -> a -> b

Memoize the function f. If the argument of f differs from the previous call, then f is recomputed.

P purescript-pha M Pha.Util
moldMap :: forall t e m. Moldable t e => Monoid m => (e -> m) -> t -> m
P purescript-moldy M Data.Moldy
moldMapDefaultL :: forall m e t. Moldable t e => Monoid m => (e -> m) -> t -> m
P purescript-moldy M Data.Moldy
moldMapDefaultR :: forall m e t. Moldable t e => Monoid m => (e -> m) -> t -> m

A default implementation of moldMap based on moldr

P purescript-moldy M Data.Moldy
nmap :: forall fa fb a b. NestedFunctor fa fb a b => (a -> b) -> fa -> fb
P purescript-nested-functor M Data.Functor.Nested
on :: forall evt obj callback out proxy. On evt obj callback out => proxy evt -> obj -> callback -> out
P purescript-node-websocket M Node.Websocket
mapFlipped :: forall f a b. Functor f => f a -> (a -> b) -> f b

mapFlipped is map with its arguments reversed. For example:

[1, 2, 3] <#> \n -> n * n
P purescript-prelude M Data.Functor
modify :: forall t a. Newtype t a => (a -> a) -> t -> t

This combinator unwraps the newtype, applies a monomorphic function to the contained value and wraps the result back in the newtype

P purescript-newtype M Data.Newtype
enumFromThenTo :: forall f a. Unfoldable f => Functor f => BoundedEnum a => a -> a -> a -> f a

Returns a sequence of elements from the first value, taking steps according to the difference between the first and second value, up to (but not exceeding) the third value.

enumFromThenTo 0 2 6 = [0, 2, 4, 6]
enumFromThenTo 0 3 5 = [0, 3]

Note that there is no BoundedEnum instance for integers, they're just being used here for illustrative purposes to help clarify the behaviour.

The example shows Array return values, but the result can be any type with an Unfoldable1 instance.

P purescript-enums M Data.Enum
censor :: forall w m a. MonadWriter w m => (w -> w) -> m a -> m a

Modify the final accumulator value by applying a function.

P purescript-transformers M Control.Monad.Writer.Class
local :: forall e w a. ComonadEnv e w => (e -> e) -> w a -> w a
P purescript-transformers M Control.Comonad.Env.Class
local :: forall r m a. MonadReader r m => (r -> r) -> m a -> m a
P purescript-transformers M Control.Monad.Reader.Class
peeks :: forall s a w. ComonadStore s w => (s -> s) -> w a -> a

Extract a value from a position which depends on the current position.

P purescript-transformers M Control.Comonad.Store.Class
seeks :: forall s a w. ComonadStore s w => (s -> s) -> w a -> w a

Reposition the focus at the specified position, which depends on the current position.

P purescript-transformers M Control.Comonad.Store.Class
flippedMap :: forall f a b. Functor f => f a -> (a -> b) -> f b
P purescript-signal M Signal
transAnaT :: forall t f. Recursive t f => Corecursive t f => (t -> t) -> t -> t
P purescript-matryoshka M Matryoshka.Unfold
transCataT :: forall t f. Recursive t f => Corecursive t f => (t -> t) -> t -> t
P purescript-matryoshka M Matryoshka.Fold
censorAccum :: forall acc html a. Accum acc html => (acc -> acc) -> html a -> html a
P purescript-chameleon-transformers M Chameleon.Transformers.Accum.Class
setCtx :: forall ctx html a. Ctx ctx html => (ctx -> ctx) -> html a -> html a
P purescript-chameleon-transformers M Chameleon.Transformers.Ctx.Class
mapErr :: forall e m a. MonadError e m => (e -> e) -> m a -> m a
P purescript-ts-bridge M TsBridge.Types
everywhere :: forall a. Data a => (forall b. Data b => b -> b) -> a -> a

Apply a transformation everywhere, bottom-up

P purescript-ajnsit-typeable M Data.Data
everywhere' :: forall a. Data a => (forall b. Data b => b -> b) -> a -> a

Apply a transformation everywhere, top-down

P purescript-ajnsit-typeable M Data.Data
gmapT :: forall a. Data a => (forall b. Data b => b -> b) -> a -> a

A generic transformation that maps over the immediate subterms

P purescript-ajnsit-typeable M Data.Data
iterate :: forall a u. Unfoldable1 u => (a -> a) -> a -> u a

Create an infinite Unfoldable1 by repeated application of a function to a seed value. Analogous to iterateN, but with no iteration limit.

This should only be used to produce either lazy types (like lazy Lists) or types with truncating Unfoldable1 instances (like Maybe).

P purescript-trivial-unfold M Data.Unfoldable1.Trivial1
mkT :: forall a b. Typeable a => Typeable b => (b -> b) -> a -> a
P purescript-ajnsit-typeable M Data.Data
applyFlipped :: forall a b. a -> (a -> b) -> b

Applies an argument to a function. This is primarily used as the (#) operator, which allows parentheses to be omitted in some cases, or as a natural way to apply a value to a chain of composed functions.

P purescript-prelude M Data.Function
clamp :: forall a. Ord a => a -> a -> a -> a

Clamp a value between a minimum and a maximum. For example:

let f = clamp 0 10
f (-5) == 0
f 5    == 5
f 15   == 10
P purescript-prelude M Data.Ord
asks :: forall r m a. MonadAsk r m => (r -> a) -> m a

Projects a value from the global context in a MonadAsk.

P purescript-transformers M Control.Monad.Reader.Class
gets :: forall s m a. MonadState s m => (s -> a) -> m a

Get a value which depends on the current state.

P purescript-transformers M Control.Monad.State.Class
folding :: forall f x y z. Folding f x y z => f -> x -> y -> z
P purescript-heterogeneous M Heterogeneous.Folding
hfoldl :: forall f x a b. HFoldl f x a b => f -> x -> a -> b
P purescript-heterogeneous M Heterogeneous.Folding
hfoldlWithIndex :: forall f x a b. HFoldlWithIndex f x a b => f -> x -> a -> b
P purescript-heterogeneous M Heterogeneous.Folding
mappingWithIndex :: forall f i a b. MappingWithIndex f i a b => f -> i -> a -> b
P purescript-heterogeneous M Heterogeneous.Mapping
convertOptionsWithDefaults :: forall t defaults provided all. ConvertOptionsWithDefaults t defaults provided all => t -> defaults -> provided -> all
P purescript-convertable-options M ConvertableOptions
applyTo :: forall f this a b. f -> this -> a -> b

Apply a function to a this object with the given arguments

P purescript-ffi-simple M FFI.Simple.Functions
buildNode :: forall e f p v. ElementBuilder e f p v => e -> f p -> v -> v
P purescript-concur-core M Concur.Core.ElementBuilder
_call :: forall b a. a -> (a -> b) -> b
P purescript-neon M Neon.Operator
bind :: forall a. Semigroup a => a -> (a -> a) -> a
P purescript-qualified-do M QualifiedDo.Semigroup
clamp :: forall a. HasGreater a => HasLess a => a -> a -> a -> a

Clamps a value between some bounds. If the lower bound is greater than the upper bound, they will be swapped.

2 :clamp 3 5 -- 3
4 :clamp 3 5 -- 4
6 :clamp 3 5 -- 5
6 :clamp 5 3 -- 5
P purescript-neon M Neon.Helper
extract :: forall r x a. TypeEquals r x => r -> (x -> a) -> a
P purescript-eta-conversion M Data.ReaderTEtaConversionTransformer
foldEnum :: forall a b. BoundedEnum a => Semigroup b => (a -> b) -> b

Map each element of a BoundedEnum into a semigroup, and combine the results through refold1.

P purescript-trivial-unfold M Data.Unfoldable1.Trivial1
folding :: forall f x y z. Folding f x y z => f -> x -> y -> z
P purescript-heterogenous M Heterogenous.Folding
hfoldl :: forall f x a b. HFoldl f x a b => f -> x -> a -> b
P purescript-heterogenous M Heterogenous.Folding
hfoldlWithIndex :: forall f x a b. HFoldlWithIndex f x a b => f -> x -> a -> b
P purescript-heterogenous M Heterogenous.Folding
mappingWithIndex :: forall f i a b. MappingWithIndex f i a b => f -> i -> a -> b
P purescript-heterogenous M Heterogenous.Mapping
new2 :: forall b a2 a1 o. o -> a1 -> a2 -> b
P purescript-ffi-utils M FFI.Util
nmapFlipped :: forall b a fb fa. NestedFunctor fa fb a b => fa -> (a -> b) -> fb
P purescript-nested-functor M Data.Functor.Nested

t

t :: forall b a. a -> (a -> b) -> b

Reverse application which is probably exist inside Lens module

P purescript-birds M Aviary.Birds

t

t :: forall b a. a -> (a -> b) -> b
P purescript-combinators M Data.Combinators
tabulate :: forall f a b. Representable f a => (a -> b) -> f b
P purescript-functor-vector M Data.Functor.Representable
thrush :: forall b a. a -> (a -> b) -> b

T combinator - thrush

CI

Λ a b . a → (a → b) → b

λ x f . f x

P purescript-birds M Aviary.Birds
fix :: forall l. Lazy l => (l -> l) -> l

fix defines a value as the fixed point of a function.

The Lazy instance allows us to generate the result lazily.

P purescript-control M Control.Lazy
modify :: forall s m. MonadState s m => (s -> s) -> m s

Modify the state by applying a function to the current state. The returned value is the new state value.

P purescript-transformers M Control.Monad.State.Class
fix :: forall a. (a -> a) -> a

Fixed point Y combinator

Λ a . (a → a) → a

λ f . (λ x. f (x x)) (λ x . f (x x))

P purescript-birds M Aviary.Birds
fix :: forall a. (a -> a) -> a
P purescript-combinators M Data.Combinators
applyFirst :: forall a b f. Apply f => f a -> f b -> f a

Combine two effectful actions, keeping only the result of the first.

P purescript-prelude M Control.Apply
applySecond :: forall a b f. Apply f => f a -> f b -> f b

Combine two effectful actions, keeping only the result of the second.

P purescript-prelude M Control.Apply
voidLeft :: forall f a b. Functor f => f a -> b -> f b

A version of voidRight with its arguments flipped.

P purescript-prelude M Data.Functor
alt :: forall f a. Alt f => f a -> f a -> f a
P purescript-control M Control.Alt
choose :: forall m a. MonadGen m => m a -> m a -> m a

Creates a generator that outputs a value chosen from one of two existing existing generators with even probability.

P purescript-gen M Control.Monad.Gen
mulNat :: forall proxy a b c. ProductNat a b c => proxy a -> proxy b -> proxy c
P purescript-typelevel-peano M Type.Data.Peano.Nat.Definition
plus :: forall proxy a b c. SumInt a b c => proxy a -> proxy b -> proxy c
P purescript-typelevel-peano M Type.Data.Peano.Int.Definition
plusNat :: forall proxy a b c. SumNat a b c => proxy a -> proxy b -> proxy c
P purescript-typelevel-peano M Type.Data.Peano.Nat.Definition
powNat :: forall proxy a b c. ExponentiationNat a b c => proxy a -> proxy b -> proxy c
> powNat d2 d3
8 -- : NProxy D8

a raised to the power of b a^b = c

P purescript-typelevel-peano M Type.Data.Peano.Nat.Definition
prod :: forall proxy a b c. ProductInt a b c => proxy a -> proxy b -> proxy c
P purescript-typelevel-peano M Type.Data.Peano.Int.Definition
sampleOnLeft_ :: forall event a b. IsEvent event => event a -> event b -> event b
P purescript-hyrule M FRP.Event.Class
sampleOnRight_ :: forall event a b. IsEvent event => event a -> event b -> event a

Create an Event which samples the latest values from the first event at the times when the second event fires, ignoring the values produced by the second event.

P purescript-hyrule M FRP.Event.Class
sampleOn_ :: forall b a event. IsEvent event => event a -> event b -> event a

Create an Event which samples the latest values from the first event at the times when the second event fires, ignoring the values produced by the second event.

P purescript-event M FRP.Event.Class
applyFirst :: forall v1 v0 f c. HasApply c f => HasConst c => HasMap c f => ObjectOf c v0 => ObjectOf c v1 => ObjectOf c (c v1 v0) => f v0 -> f v1 -> f v0
P purescript-subcategory M Control.Subcategory.Functor.HasApply
applySecond :: forall v1 v0 f c. HasApply c f => HasConst c => HasIdentity c => HasMap c f => ObjectOf c v0 => ObjectOf c v1 => ObjectOf c (c v1 v1) => ObjectOf c (c v0 (c v1 v1)) => ObjectOf c (c (c v1 v1) (c v0 (c v1 v1))) => f v0 -> f v1 -> f v1
P purescript-subcategory M Control.Subcategory.Functor.HasApply
concat :: forall xs ys zs lproxy. Concat xs ys zs => lproxy xs -> lproxy ys -> lproxy zs
P purescript-typelevel-lists M Type.Data.List
drop :: forall n xs ys lproxy iproxy. Drop n xs ys => iproxy n -> lproxy xs -> lproxy ys
P purescript-typelevel-lists M Type.Data.List
map :: forall f xs ys fproxy kproxy lproxy. Map f xs ys => fproxy f -> kproxy xs -> lproxy ys
P purescript-typelevel-lists M Type.Data.List
take :: forall n xs ys lproxy iproxy. Take n xs ys => iproxy n -> lproxy xs -> lproxy ys
P purescript-typelevel-lists M Type.Data.List
zip :: forall x y z lproxy. Zip x y z => lproxy x -> lproxy y -> lproxy z
P purescript-typelevel-lists M Type.Data.List
flipScalarMul :: forall k f. VectorField f k => f k -> k -> f k
P purescript-vectorfield M Data.VectorField
get :: forall v s r' r l g f. Cons s v r' r => RGet f g s l r => RowToList r l => g s -> f r -> v
P purescript-struct M Data.Struct.Get.Get
getOrAlt :: forall v s r' r l h g f. Alternative h => Cons s v r' r => RowToList r l => RGetOrAlt f g s l r => g s -> f r -> h v
P purescript-struct M Data.Struct.GetOrAlt.GetOrAlt
match :: forall v r1 r0 l1 l0 g f. RMatch f g v l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => f r0 -> g r1 -> v
P purescript-struct M Data.Struct.Match.Match
max1 :: forall f a. Ord1 f => f a -> f a -> f a
P purescript-higher-order M Data.Operator.Ord