Richard Eisenberg
Richard Eisenberg
Yes, I also tend to think that `Monad ((->) env)` is not to blame here. (Though I agree it may be blameworthy elsewhere.) I'm still not sure about the original...
OK. So I think then we have a GHC bug we can submit. In the module ```hs module Bug where f :: Int -> Bool -> IO () f x...
It's possible that the plan I'm proposing -- blame the entire `do` block, not just one statement -- is infeasible, but that's not clear yet. This is why I'd like...
This one will be hard to fix, sadly. The problem is that, without `-XTypeApplications`, GHC is still parsing a *term* when it sees the `(->)`. I think the way forward...
I don't think the MR would work as a post-pass. For example: ```hs x = 5 y :: Int y = x z :: Double z = x ``` If...
> Ah, good points. Is the most general type of the MR'd variable locally definable? Yes. The MR is implemented in one specific place (`GHC.Tc.Solver.decideMonoTyVars`). Though there would be corner...
It's hard for me to say exactly without taking an honest stab at the implementation. This stuff is surprisingly tricky.
Yes, I think GHC can do much better in this regard. I think it's fair to submit your ticket to GHC directly.
I like where we're going here, but I would say that `#` isn't reserved at all: We can use a `#` suffix on any function. It so happens that we...
I have a few small perturbations to the suggested text (which I very much like): ``` Not in scope in types: 'Just' However, a data constructor of that name is...