HORIZON HASKELLDocslts/ghc-9.10.xc74966e2026-09-27Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27

Modulefirst-class-families-0.8.1.0Haskell2010

Fcf.Combinators

General fcf combinators.

See also Fcf.Data.Function for more.

  • 16 types
datadata Pure (b :: a) (c :: a)
#
Instances1Eval
  • type Eval (Pure x) = xDefined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata Pure1 (c :: a -> b) (d :: a) (e :: b)
#
Instances1Eval
  • type Eval (Pure1 f x) = f xDefined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata Pure2 (d :: a -> b -> c) (e :: a) (f :: b) (g :: c)
#
Instances1Eval
  • type Eval (Pure2 f x y) = f x yDefined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata Pure3 (e :: a -> b -> c -> d) (f :: a) (g :: b) (h :: c) (i :: d)
#
Instances1Eval
  • type Eval (Pure3 f x y z) = f x y zDefined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata (=<<) (c :: a -> Exp b) (d :: Exp a) (e :: b)
#
Instances1Eval
  • type Eval (k =<< e) = Eval (k (Eval e))Defined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata (>>=) (c :: Exp a) (d :: a -> Exp b) (e :: b)
#
Instances1Eval
  • type Eval (e >>= k) = Eval (k (Eval e))Defined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata (<=<) (d :: b -> Exp c) (e :: a -> Exp b) (f :: a) (g :: c)
#
Instances1Eval
  • type Eval ((<=<) f g x) = Eval (f (Eval (g x)))Defined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata LiftM2 (d :: a -> b -> Exp c) (e :: Exp a) (f :: Exp b) (g :: c)
#
Instances1Eval
  • type Eval (LiftM2 f x y) = Eval (f (Eval x) (Eval y))Defined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata LiftM3 (e :: a -> b -> c -> Exp d) (f :: Exp a) (g :: Exp b) (h :: Exp c) (i :: d)
#
Instances1Eval
datadata Join (b :: Exp (Exp a)) (c :: a)
#
Instances1Eval
  • type Eval (Join e) = Eval (Eval e)Defined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata (<$>) (c :: a -> b) (d :: Exp a) (e :: b)
#
Instances1Eval
  • type Eval (f <$> e) = f (Eval e)Defined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata (<*>) (c :: Exp (a -> b)) (d :: Exp a) (e :: b)
#
Instances1Eval
  • type Eval (f <*> e) = Eval f (Eval e)Defined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata Flip (d :: a -> b -> Exp c) (e :: b) (f :: a) (g :: c)
#
Instances1Eval
  • type Eval (Flip f y x) = Eval (f x y)Defined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata ConstFn (c :: a) (d :: b) (e :: a)
#
Instances1Eval
  • type Eval (ConstFn a2 _b) = a2Defined in first-class-families-0.8.1.0 · Fcf.Combinators
datadata ($) (c :: a -> Exp b) (d :: a) (e :: b)
#

Note that this denotes the identity function, so ($) f can usually be replaced with f.

Instances1Eval
  • type Eval (f $ a3) = Eval (f a3)Defined in first-class-families-0.8.1.0 · Fcf.Combinators