In the Doc on hackage.haskell.org, in the Simple types section, when shown how to pattern match any T type with matchT, I think there is an error.
This:
matchT String Int Bool r t
should be so:
matchT String Int Bool t r
because matchT is defined as:
(a : )
-> (b : )
-> (c : )
-> (t : forall (r : ) -> r -> (a -> r) -> (b -> c -> r) -> r)
-> t
and not as:
(a : )
-> (b : )
-> (c : )
-> (r : )
-> (t : forall (r : *) -> r -> (a -> r) -> (b -> c -> r) -> r)
-> t r
In the Doc on hackage.haskell.org, in the
Simple types
section, when shown how to pattern match anyT
type withmatchT
, I think there is an error. This:should be so:
because
matchT
is defined as:and not as:
I'm wrong?