[Haskell-cafe] RebindableSyntax and fail in GHC 8

David Menendez dave at zednenem.com
Wed Dec 21 20:56:24 UTC 2016


On Tue, Dec 20, 2016 at 3:53 AM, Chris Smith <cdsmith at gmail.com> wrote:

> Hey everyone,
>
> Can someone explain to me by GHC 8 causes list comprehension bindings to
> desugar to use 'fail', when RebindableSyntax is enabled in GHC 8?  Note
> that I do not have monad comprehensions enabled.  If I define fail,
> everything works (apparently regardless of what I define fail to do?!?),
> but I'd like to understand why it's necessary.
>

Perhaps fail is used by the translation for guards. I don’t have a working
GHC right now, but what happens if you define fail = error and evaluate [ x
| x <- “a", False]?

-- 
Dave Menendez <dave at zednenem.com>
<http://www.eyrie.org/~zednenem/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20161221/ca8972d6/attachment.html>


More information about the Haskell-Cafe mailing list