packages feed

singletons-1.0: tests/compile-and-dump/Singletons/LambdasComprehensive.ghc76.template

Promote/LambdasComprehensive.hs:0:0: Splicing declarations
    promote
      [d| foo :: [Nat]
          foo
            = map (\ x -> either_ pred Succ x) [Left Zero, Right (Succ Zero)]
          bar :: [Nat]
          bar = map (either_ pred Succ) [Left Zero, Right (Succ Zero)] |]
  ======>
    Promote/LambdasComprehensive.hs:(0,0)-(0,0)
    foo :: [Nat]
    foo
      = map (\ x -> either_ pred Succ x) [Left Zero, Right (Succ Zero)]
    bar :: [Nat]
    bar = map (either_ pred Succ) [Left Zero, Right (Succ Zero)]
    type Foo =
        Apply (Apply MapSym0 Lambda_0123456789Sym0) '[Apply LeftSym0 ZeroSym0,
                                                      Apply RightSym0 (Apply SuccSym0 ZeroSym0)]
    type FooSym0 = Foo
    type family Lambda_0123456789 (t :: k) :: r
    type instance Lambda_0123456789 x =
        Apply (Apply (Apply Either_Sym0 PredSym0) SuccSym0) x
    data Lambda_0123456789Sym0 (k :: TyFun k r)
    type instance Apply Lambda_0123456789Sym0 a = Lambda_0123456789 a
    type Bar =
        Apply (Apply MapSym0 (Apply (Apply Either_Sym0 PredSym0) SuccSym0)) '[Apply LeftSym0 ZeroSym0,
                                                                              Apply RightSym0 (Apply SuccSym0 ZeroSym0)]
    type BarSym0 = Bar