> El 21 dic 2016, a las 02:36, Simon Peyton Jones via ghc-devs > <ghc-devs@haskell.org> escribió: > > > > I even wonder (whisper it) about taking it out altogether, when Edward says > “many of the original applications for arrows have been shown to be perfectly > suited to being handled by Applicatives” (i.e. with no extensions except > AppliciativeDo. But I have no data on whether anyone (at all) is using arrow > notation these days, and if so how mission-critical it is to them; and old > packages like Yampa certainly use it.
Unfortunately ApplicativeDo is for a very limited use-case, of the form: do a0 <- x0 a1 <- x1 -- x1 cannot refer to a0 ... pure ... -- last line must be "pure", "pure $", "return" or "return $" Additionally, Opaleye uses Arrow syntax pretty heavily iirc. I haven't actually prototyped it, but I dream of an ApplicativeDo or ArrowDo which desugars do blocks with join in place of >>= , so any do-block which doesn't use any joins doesn't require the monad constraint... Tom
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs