packages feed

Agda-2.3.2.2: test/interaction/ExtendedLambdaCase.agda

module ExtendedLambdaCase where

data Bool : Set where
  true false : Bool

data Void : Set where

foo : Bool -> Bool -> Bool -> Bool
foo = λ { x → λ { y z → {!!} } }

module parameterised {A : Set}(B : A -> Set) where

  data Bar : (Bool -> Bool) -> Set where
    baz : (t : Void) -> Bar λ { x → {!!} }

  -- with hidden argument
  data Bar' : (Bool -> Bool) -> Set where
    baz' : {t : Void} -> (t' : Void) -> Bar' λ { x' → {!!} }


baz : Bool -> {w : Bool} -> Bool
baz = λ { z {w} → {!!} }

another-short-name : {A : Set} -> (A -> {x : A} -> A -> A)
another-short-name = {! λ { a {x} b → a } !}

f : Set
f =  (y : Bool) -> parameterised.Bar {Bool}(λ _ → Void) (λ { true → true ; false → false })