[ghc-steering-committee] Constraint vs Type: I propose acceptance

Simon Peyton Jones simonpj at microsoft.com
Mon Feb 26 11:14:15 UTC 2018


Friends
I propose that we support the GHC proposal "Declare Constraint is not apart from Type<https://github.com/ghc-proposals/ghc-proposals/blob/rae/constraint-vs-type/proposals/0000-constraint-vs-type.rst>"
Currently GHC operates an uneasy compromise:

  *   Constraint and Type are treated as distinct in the type checker (e.g. do not unify)
  *   But they are treated as the same in Core
I have spent ages in discussion with Richard and others for how to fix this wart.  Really, they should be either

  *   completely different (like Int and Bool), or
  *   completely the same (like [Char] and String).
But both these stances have problems, and nothing satisfying has emerged.  So this proposal simply fixes the worst aspect (unsoundness) of the current setup.
So I regard it as a way to stay explicitly non-committal, leaving the main question open.
There are a couple of clarifications I'd like which I've put on the discussion thread.
Simon
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-steering-committee/attachments/20180226/4e912ddd/attachment-0001.html>


More information about the ghc-steering-committee mailing list