Simon, Richard,thank you for your answer! I don't have time to look into the GHC sources right now, but I will set aside some time after the holidays and take a close look at what the exact restrictions on proc-notation are and document them.Since you suggested a rewrite of GHC's handling of proc-syntax, are there any opinions on integrating generalized arrows (Joseph 2014) in the process? I think they would greatly improve arrows! I don't know if I have the time to attempt this, but if I find the time I would give it a try. Why wasn't this integrated while it was still actively developed?Best,Jan2016-11-29 12:41 GMT+00:00 Simon Peyton Jones <simonpj@microsoft.com>:Jan,
Type checking and desugaring for arrow syntax has received Absolutely No Love for several years. I do not understand how it works very well, and I would not be at all surprised if it is broken in corner cases.
It really needs someone to look at it carefully, document it better, and perhaps refactor it – esp by using a different data type rather than piggy-backing on HsExpr.
In the light of that understanding, I think rebindable syntax will be easier.
I don’t know if you are up for that, but it’s a rather un-tended part of GHC.
Thanks
Simon
From: ghc-devs [mailto:ghc-devs-bounces@haske
ll.org ] On Behalf Of Richard Eisenberg
Sent: 28 November 2016 22:30
To: Jan Bracker <jan.bracker@googlemail.com>
Cc: ghc-devs@haskell.org
Subject: Help needed: Restrictions of proc-notation with RebindableSyntax
Jan’s question is a good one, but I don’t know enough about procs to be able to answer. I do know that the answer can be found by looking for uses of `tcSyntaxOp` in the TcArrows module.... but I just can’t translate it all to source Haskell, having roughly 0 understanding of this end of the language.
Can anyone else help Jan here?
Richard
On Nov 23, 2016, at 4:34 AM, Jan Bracker via ghc-devs <ghc-devs@haskell.org> wrote:
Hello,
I want to use the proc-notation together with RebindableSyntax. So far what I am trying to do is working fine, but I would like to know what the exact restrictions on the supplied functions are. I am introducing additional indices and constraints on the operations. The documentation [1] says the details are in flux and that I should ask directly.
Best,
Jan
______________________________
_________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs