<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.Code, li.Code, div.Code
        {mso-style-name:Code;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        margin-bottom:.0001pt;
        font-size:9.0pt;
        font-family:"Courier New";}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;
        font-weight:normal;
        font-style:normal;
        text-decoration:none none;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
.MsoPapDefault
        {mso-style-type:export-only;
        margin-top:6.0pt;
        margin-right:0cm;
        margin-bottom:6.0pt;
        margin-left:0cm;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-GB" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:12.0pt">I support this #81.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Simon<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> ghc-steering-committee <ghc-steering-committee-bounces@haskell.org>
<b>On Behalf Of </b>Roman Leshchinskiy<br>
<b>Sent:</b> 09 August 2018 19:44<br>
<b>To:</b> Joachim Breitner <mail@joachim-breitner.de><br>
<b>Cc:</b> ghc-steering-committee@haskell.org<br>
<b>Subject:</b> Re: [ghc-steering-committee] Proposal: Syntax for visible dependent quantification (#81)<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
Sorry for the long delay. Given that the general feedback is positive and #102 is now available, I recommend that we accept #81.<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
<o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
Thanks,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
<o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
Roman<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
<o:p> </o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
On Sat, May 5, 2018 at 10:12 PM, Joachim Breitner <<a href="mailto:mail@joachim-breitner.de" target="_blank">mail@joachim-breitner.de</a>> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
Hi,<br>
<br>
indeed, we should make progress here. Roman, with #102 discussed<br>
(albeit not decided), what is your recommendation about #81?<br>
<br>
Cheers,<br>
Joachim<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
<br>
Am Sonntag, den 15.04.2018, 23:09 -0400 schrieb Richard Eisenberg:<br>
> Hi committee,<br>
> <br>
> I'd like to reboot this discussion, now that #102 has been written, debated, and tabled. As a reminder, this proposal is blocking #54, which will cure real bugs GHC is plagued by.<br>
> <br>
> Thanks!<br>
> Richard<br>
> <br>
> > On Jan 5, 2018, at 8:37 PM, Richard Eisenberg <<a href="mailto:rae@cs.brynmawr.edu">rae@cs.brynmawr.edu</a>> wrote:<br>
> > <br>
> > OK. I've posted proposal #102 (<a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgoldfirere%2Fghc-proposals%2Fblob%2Fpi%2Fproposals%2F0000-pi.rst&data=02%7C01%7Csimonpj%40microsoft.com%7C3ccaf4dae6074e10d27808d5fe281cef%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636694370599807360&sdata=lieSdDGUo7Pts%2F%2FIaWKAHPXnMF8OseDu5GGyy0iMYo8%3D&reserved=0" target="_blank">https://github.com/goldfirere/ghc-proposals/blob/pi/proposals/0000-pi.rst</a>)
 which describes the full set of quantifiers for Dependent Haskell.<br>
> > <br>
> > I continue to think that #81 can stand alone, but those who want a larger picture can see #102 for that larger picture.<br>
> > <br>
> > Thanks,<br>
> > Richard<br>
> > <br>
> > > On Dec 21, 2017, at 9:15 AM, Richard Eisenberg <<a href="mailto:rae@cs.brynmawr.edu">rae@cs.brynmawr.edu</a>> wrote:<br>
> > > <br>
> > > These are good suggestions. Thanks. While I'm writing all these proposals, it's about time I introduce pi proper -- the proposal for pi can go further than reserve syntax, because there are already places in the language that support real pi-types (the
 kinds of type families [assuming #54 is accepted] and the kinds of datatypes).<br>
> > > <br>
> > > I'll put together yet another proposal. :)<br>
> > > <br>
> > > Regardless, I don't want to shut down debate on this proposal in isolation. In particular, I'd love new syntax suggestions, as I agree that the proposed syntax is a little subtle.<br>
> > > <br>
> > > Thanks,<br>
> > > Richard<br>
> > > <br>
> > > > On Dec 20, 2017, at 3:35 PM, Roman Leshchinskiy <<a href="mailto:rleshchinskiy@gmail.com">rleshchinskiy@gmail.com</a>> wrote:<br>
> > > > <br>
> > > > Hi everyone,<br>
> > > > <br>
> > > > The proposal is about adding support for dependent quantification to<br>
> > > > kind signatures:<br>
> > > > <br>
> > > > <a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fghc-proposals%2Fghc-proposals%2Fpull%2F81&data=02%7C01%7Csimonpj%40microsoft.com%7C3ccaf4dae6074e10d27808d5fe281cef%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636694370599807360&sdata=VAlKyMTnw%2BywQ46AEhOgAhEsRLU7TagmS9Winqjwnlw%3D&reserved=0" target="_blank">
https://github.com/ghc-proposals/ghc-proposals/pull/81</a><br>
> > > > <br>
> > > > Consider the following declaration (example lifted from the proposal):<br>
> > > > <br>
> > > > data T k (a :: k)<br>
> > > > <br>
> > > > GHC accepts this but it can't be given an explicit kind. Internally,<br>
> > > > it is assigned a kind which is rendered as<br>
> > > > <br>
> > > > forall k -> k -> *<br>
> > > > <br>
> > > > but this isn't accepted in source code. Note that in applications of<br>
> > > > T, k must be specified explicitly (e.g., T Type Int) which is why T<br>
> > > > does *not* have the kind<br>
> > > > <br>
> > > > forall k. k -> *<br>
> > > > <br>
> > > > Moreover, k is mentioned later in the kind which is why something like<br>
> > > > Type -> k -> * doesn't work, either.<br>
> > > > <br>
> > > > The proposal is to allow forall k -> k -> * and similar kinds to<br>
> > > > appear in source code.<br>
> > > > <br>
> > > > This is actually intended as the first in a series of proposals<br>
> > > > driving us towards dependent types in Haskell as described in<br>
> > > > Richard's thesis<br>
> > > > (<a href="https://na01.safelinks.protection.outlook.com/?url=https:%2F%2Fwww.cis.upenn.edu%2F~sweirich%2Fpapers%2Feisenberg-thesis.pdf&data=02%7C01%7Csimonpj%40microsoft.com%7C3ccaf4dae6074e10d27808d5fe281cef%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C1%7C636694370599817364&sdata=b3y9GWTM8Q0DbYxtx4XspKx%2BrR1qbCYbdtRj%2BSjONdY%3D&reserved=0" target="_blank">https://www.cis.upenn.edu/~sweirich/papers/eisenberg-thesis.pdf</a>).<br>
> > > > Ultimately, the intention is to have all of the following (cf. Chapter<br>
> > > > 4 of the thesis):<br>
> > > > <br>
> > > > forall a. t<br>
> > > > forall a -> t<br>
> > > > pi a. t<br>
> > > > pi a -> t<br>
> > > > <br>
> > > > Here, forall and pi express relevance (does it exist at runtime) and .<br>
> > > > and -> express visibility (does it have to be specified explicitly).<br>
> > > > <br>
> > > > Because of this, my recommendation is to strongly encourage the author<br>
> > > > to submit an extended proposal which reserves (but doesn't specify the<br>
> > > > semantics of) the above syntax wholesale.<br>
> > > > <br>
> > > > This would allow us to ensure that various bits of Dependent Haskell<br>
> > > > use consistent syntax and language extensions once implemented. I find<br>
> > > > it quite difficult to discuss just this specific bit of syntax in<br>
> > > > isolation. Indeed, the public discussion was rather confused without<br>
> > > > an explanation of the roadmap<br>
> > > > (<a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fghc-proposals%2Fghc-proposals%2Fpull%2F81%23issuecomment-336892922&data=02%7C01%7Csimonpj%40microsoft.com%7C3ccaf4dae6074e10d27808d5fe281cef%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636694370599817364&sdata=%2Ft0UNHhKAyPJRDifK1q31Fpc2LNWfuTyl3PCUIHourI%3D&reserved=0" target="_blank">https://github.com/ghc-proposals/ghc-proposals/pull/81#issuecomment-336892922</a>).<br>
> > > > <br>
> > > > Alternatively, we could just agree on the roadmap ourselves, without<br>
> > > > public discussion. This would somewhat circumvent the process, though.<br>
> > > > <br>
> > > > If we decide to discuss just the proposal as is, though, then I'd be<br>
> > > > weakly against the proposed syntax as it is too subtle for my taste<br>
> > > > and abuses familiar mathematical notation somewhat. I'd probably<br>
> > > > prefer something like:<br>
> > > > <br>
> > > > type a -> t<br>
> > > > <br>
> > > > The proposal also doesn't specify what language extension would turn<br>
> > > > on support for the syntax so this would have to be rectified.<br>
> > > > <br>
> > > > Thanks,<br>
> > > > <br>
> > > > Roman<br>
> > > > _______________________________________________<br>
> > > > ghc-steering-committee mailing list<br>
> > > > <a href="mailto:ghc-steering-committee@haskell.org">ghc-steering-committee@haskell.org</a><br>
> > > > <a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee" target="_blank">
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee</a><br>
> > > <br>
> > > _______________________________________________<br>
> > > ghc-steering-committee mailing list<br>
> > > <a href="mailto:ghc-steering-committee@haskell.org">ghc-steering-committee@haskell.org</a><br>
> > > <a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee" target="_blank">
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee</a><br>
> <br>
> _______________________________________________<br>
> ghc-steering-committee mailing list<br>
> <a href="mailto:ghc-steering-committee@haskell.org">ghc-steering-committee@haskell.org</a><br>
> <a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee" target="_blank">
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee</a><o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
-- <br>
Joachim Breitner<br>
  <a href="mailto:mail@joachim-breitner.de">mail@joachim-breitner.de</a><br>
  <a href="https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.joachim-breitner.de%2F&data=02%7C01%7Csimonpj%40microsoft.com%7C3ccaf4dae6074e10d27808d5fe281cef%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636694370599827378&sdata=mE%2FLHhl4iswq84Ol1QPDJ5DITtya6jahvEiWpE%2BbZwE%3D&reserved=0" target="_blank">
http://www.joachim-breitner.de/</a><o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:6.0pt;margin-right:0cm;margin-bottom:6.0pt;margin-left:0cm">
<o:p> </o:p></p>
</div>
</div>
</div>
</body>
</html>