packages feed

morte-1.5.0: test/src/example7.mt

-- mapid2.mt

(    \(List : * -> *)
->   \(map  : forall (a : *) -> forall (b : *) -> (a -> b) -> List a -> List b)
->   \(id   : forall (a : *) -> a -> a)
    ->   \(a : *) -> id (List a)
)

-- List
(\(a : *) -> forall (x : *) -> (a -> x -> x) -> x -> x)

-- map
(   \(a : *)
->  \(b : *)
->  \(f : a -> b)
->  \(l : forall (x : *) -> (a -> x -> x) -> x -> x)
->  \(x : *)
->  \(Cons : b -> x -> x)
->  \(Nil: x)
->  l x (\(va : a) -> \(vx : x) -> Cons (f va) vx) Nil
)

-- id
(\(a : *) -> \(va : a) -> va)