[ghc-steering-committee] Proposal #402 (changes to GADT syntax); rec: accept

Richard Eisenberg rae at richarde.dev
Fri Mar 19 18:38:22 UTC 2021



> On Mar 19, 2021, at 12:18 PM, Iavor Diatchki <iavor.diatchki at gmail.com> wrote:
> 
>    type T = Int -> S
>    data S where C :: T

It's true that this doesn't work today -- and that there are no plans for something like that working. If we were clearer that constructor signatures weren't types, then this case would be easier to understand. Perhaps this is why I'm in favor of dropping the parentheses; allowing them is actually an  exception to the general rule here. (The general rule: the thing after the :: is a `->`-separated list of arguments, terminated by the return type.)

Richard


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-steering-committee/attachments/20210319/af32f800/attachment.html>


More information about the ghc-steering-committee mailing list