Merijn Verstraaten | 19 Feb 13:07 2014
Picon

State of -XImpredicativeTypes

Lectori salutem,

What is the actual state of ImpredicativeTypes? It appears documented as a "properly" finished GHC
extension, but on IRC and other places I keep hearing it's poorly tested, buggy or incomplete. Is this true
or just FUD?

Cheers,
Merijn
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users <at> haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Simon Peyton Jones | 19 Feb 14:48 2014
Picon

RE: State of -XImpredicativeTypes

ImpredicativeTypes is not properly finished.  When I first implemented it I implemented a fairly
ambitious design based on "boxy types" (see paper with that in the title).  But it proved unsustainably
complicated, both in the implementation and indeed for programmers to reason about which programs
should be accepted and which should not.

So I took most of it out.  There are some vestiges but to a first approximation it isn't really there at all.

My plan is to do something along the lines of QML (again, look at the paper), plus add explicit type
application.  But there are always too many other things to do.

This is swampy territory, and I have spent more time on it that I care to tell you without producing a design
that I am satisfied with.  So while I would be very happy if someone wants to start helping, you do need a good
grasp of type inference first.  It's not a project to learn on.

However the *internal* intermediate language, Core, is fully impredicative and always has been.  No
difficulties there.

Simon

| -----Original Message-----
| From: Glasgow-haskell-users [mailto:glasgow-haskell-users-
| bounces <at> haskell.org] On Behalf Of Merijn Verstraaten
| Sent: 19 February 2014 12:07
| To: glasgow-haskell-users <at> haskell.org
| Subject: State of -XImpredicativeTypes
| 
| Lectori salutem,
| 
| What is the actual state of ImpredicativeTypes? It appears documented as
| a "properly" finished GHC extension, but on IRC and other places I keep
(Continue reading)


Gmane