Skip to content
  • Simon Peyton Jones's avatar
    Make do-notation a bit more flexible (Trac #1537) · bddd4b23
    Simon Peyton Jones authored
    This is a second attempt to fix #1537: to make the static typechecking
    of do-notation behave just like the desugared version of the same thing.
    This should allow parameterised monads to work properly (see Oleg's comment
    in the above ticket).
    
    We can probably merge to 6.8.3 if it goes smoothly.
    
    Incidentally, the resulting setup suffers from greater type ambiguity
    if (>>=) has a very general type.  So test rebindable6 no longer works
    (at least not without more type signatures), and rebindable5 requires
    extra functional dependencies.  But they are weird tests.
    bddd4b23