
To clarify my comments in this thread around desugaring: I was referring to the concrete Haskell code as written in GHC, not at all to an abstract desugaring algorithm. The implementation of arrows in GHC uses fixM, which is a nuisance. And I don't understand the code well enough to be able to untie the knot. I have a solid workaround for the time being, but it's indeed a workaround. Richard
On Dec 21, 2016, at 5:09 PM, Tom Ellis
wrote: On Wed, Dec 21, 2016 at 01:49:33PM -0600, amindfv@gmail.com wrote:
Additionally, Opaleye uses Arrow syntax pretty heavily iirc.
If I were writing the Opaleye tutorial today (and if I rewrite it) I will shy away from arrows and encourage users to use applicative style. There's only one operator where applicative is not enough, 'restrict', and that can be wrapped up as a different combinator so that no one knows they're ever using arrows.
Tom
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs