Data.Singletons.Prelude.Base

Basic functions

type family Foldr a a a :: b

sFoldr

type family Map a a :: [b]

sMap

type family a :++ a :: [a]

(%:++)

type family Otherwise :: Bool

sOtherwise

type family Id a :: a

sId

type family Const a a :: a

sConst

type family (a :. a) a :: c

(%:.)

type family f $ x :: b

type family f $! x :: b

(%$)

(%$!)

type family Flip a a a :: c

sFlip

type family AsTypeOf a a :: a

sAsTypeOf

type family Seq a a :: b

sSeq

Defunctionalization symbols

data FoldrSym0 l

data FoldrSym1 l l

data FoldrSym2 l l l

type FoldrSym3 t t t

data MapSym0 l

data MapSym1 l l

type MapSym2 t t

data (:++$) l

data l :++$$ l

type t :++$$$ t

type OtherwiseSym0

data IdSym0 l

type IdSym1 t

data ConstSym0 l

data ConstSym1 l l

type ConstSym2 t t

data (:.$) l

data l :.$$ l

data (l :.$$$ l) l

type (t :.$$$$ t) t

data ($$)

data ($$$)

type a $$$$ b

data ($!$)

data ($!$$)

type a $!$$$ b

data FlipSym0 l

data FlipSym1 l l

data FlipSym2 l l l

type FlipSym3 t t t

data AsTypeOfSym0 l

data AsTypeOfSym1 l l

type AsTypeOfSym2 t t

data SeqSym0 l

data SeqSym1 l l

type SeqSym2 t t