Why doesn't Haskell have type-level lambda abstractions?
Posted
by
Petr Pudlák
on Programmers
See other posts from Programmers
or by Petr Pudlák
Published on 2012-12-01T08:55:31Z
Indexed on
2012/12/01
11:21 UTC
Read the original article
Hit count: 343
Are there some theoretical reasons for that (like that the type checking or type inference would become undecidable), or practical reasons (too difficult to implement properly)?
Currently, we can wrap things into newtype
like
newtype Pair a = Pair (a, a)
and then have Pair :: * -> *
but we cannot do something like ?(a:*). (a,a)
.
(There are some languages that have them, for example, Scala does.)
© Programmers or respective owner