[ghc-steering-committee] Recommendation for #378: support the design for dependent types

Simon Peyton Jones simonpj at microsoft.com
Tue Apr 6 12:57:59 UTC 2021


Richard and I have discussed this.
We concluded that we'd put it back into "Needs revision" status. He's going to expand it (substantially) to include the proposed design sketch of dependent types on the GHC wiki<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.haskell.org%2Fghc%2Fghc%2F-%2Fwikis%2Fdependent-haskell&data=04%7C01%7Csimonpj%40microsoft.com%7Cad300416ae01498db28108d8f2ac9f0f%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637526170501682820%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=1wG3lnlZyfF%2FciJhxsb8UCWctNymNqC2rs5lScovvn8%3D&reserved=0>.  Then he'll resubmit in the hope of getting approval of the design in principle, subject to subsequent discussion of the fine detail.
Simon

From: Simon Peyton Jones <simonpj at microsoft.com>
Sent: 29 March 2021 13:17
To: ghc-steering-committee at haskell.org
Cc: Simon Peyton Jones <simonpj at microsoft.com>
Subject: Recommendation for #378: support the design for dependent types

Dear GHC Steering Committee
I'm recommending acceptance of Proposal #378: Support the design for dependent types<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fghc-proposals%2Fghc-proposals%2Fpull%2F378&data=04%7C01%7Csimonpj%40microsoft.com%7Cad300416ae01498db28108d8f2ac9f0f%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637526170501672827%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=YyMVsDwi8WK5mIqnECz%2Bjq3sIG8m1ino5sxiBU9Gs6I%3D&reserved=0>
As you'll see, there is a lot of useful context, but the payload is pretty simple

When evaluating new proposals, the GHC committee would consider compatibility with the proposed design sketch of dependent types on the GHC wiki<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.haskell.org%2Fghc%2Fghc%2F-%2Fwikis%2Fdependent-haskell&data=04%7C01%7Csimonpj%40microsoft.com%7Cad300416ae01498db28108d8f2ac9f0f%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637526170501682820%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=1wG3lnlZyfF%2FciJhxsb8UCWctNymNqC2rs5lScovvn8%3D&reserved=0>. Generally speaking, new proposals should be forward-compatible with the design sketch; that is, the new features proposed would continue to be at home when surrounded by other dependent-type features.

Of course, the committee remains free to revise the design sketch or to accept proposals that encroach upon it (i.e. contradicting this guidance), but such choices should be made explicitly.

See also the committee's Review Criteria<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fghc-proposals%2Fghc-proposals%2F%23review-criteria&data=04%7C01%7Csimonpj%40microsoft.com%7Cad300416ae01498db28108d8f2ac9f0f%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637526170501692814%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=qIzScWWQxoSA5OTVfZxdMeMJimq6tEtp98fGJbmfVZw%3D&reserved=0>: put another way, this proposal says that we consider the design sketch alongside other features of today's Haskell when assessing a new proposal's fit with the language.

Note that compatibility with dependent types is far from the only criterion the committee would use to evaluate a proposal. Other review criteria, such as learnability, clarity of error messages, performance, etc., remain just as ever.
Any views?  Let's try to converge rapidly.... the proposal has been substantially refined by a lot of debate.
Simon
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-steering-committee/attachments/20210406/6f1e3a7d/attachment.html>


More information about the ghc-steering-committee mailing list