pvector-0.1.1: Fast persistent vectors
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Vector.Persistent.Internal.CoercibleUtils

Synopsis

Documentation

(#.) :: Coercible b c => (b -> c) -> (a -> b) -> a -> c infixr 9 Source #

Coercive left-composition.

>>> (All #. not) True
All {getAll = False}

The semantics with respect to bottoms are:

p #. ⊥ ≡ ⊥
p #. f ≡ p . f

(.#) :: Coercible a b => (b -> c) -> (a -> b) -> a -> c infixr 9 Source #

Coercive right-composition.

>>> (stimes 2 .# Product) 3
Product {getProduct = 9}

The semantics with respect to bottoms are:

.# p ≡ ⊥
f .# p ≡ p . f