<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body><div>See the accepted proposal:  https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0005-bidir-constr-sigs.rst</div><div><br></div><div><br></div><div><br></div><div id="composer_signature"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><div style="font-size:85%;color:#575757">David Feuer</div><div style="font-size:85%;color:#575757">Well-Typed, LLP</div></div><div><br></div><div style="font-size:100%;color:#000000"><!-- originalMessage --><div>-------- Original message --------</div><div>From: Matthew Pickering <matthewtpickering@gmail.com> </div><div>Date: 1/15/18  3:27 PM  (GMT-05:00) </div><div>To: David Feuer <david@well-typed.com> </div><div>Cc: Simon Peyton Jones <simonpj@microsoft.com>, GHC developers <ghc-devs@haskell.org> </div><div>Subject: Re: Implementing pattern synonym constructor signatures </div><div><br></div></div>What is a constructor signature? Where is this specified?<br><br>On Mon, Jan 15, 2018 at 7:10 PM, David Feuer <david@well-typed.com> wrote:<br>> Over the past week I've started digging into the code that implements<br>> pattern synonyms with an eye toward implementing the pattern synonym<br>> construction function signature proposal. I think I understand a decent<br>> amount of what's going on most places. However, I don't understand enough<br>> about type checking to have any idea about what needs to change where or<br>> how. There are several things that need to be addressed:<br>><br>> 0. Parsing. I wasn't actually able to find the code that parses pattern<br>> synonyms. Can someone point me in the right direction?<br>><br>> 1. When there is a constructor signature, it needs to be used for the<br>> construction function instead of the pattern signature. Can someone give<br>> point me in the right direction about how to do this?<br>><br>> 2. When there is a constructor signature but no pattern signature, what<br>> should we do? I think "give up" sounds okay for now.<br>><br>> 3. A pattern synonym without a constructor signature needs to be treated as<br>> it is today, so the machinery for matching things up needs to remain<br>> available.<br>><br>> David Feuer<br>> Well-Typed, LLP<br>><br>> _______________________________________________<br>> ghc-devs mailing list<br>> ghc-devs@haskell.org<br>> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs<br>><br><br></body></html>