would making arrow remindable involve dropping the arr == haksell functions assumption or doing something that would allow generalized arrows?
On Mon, Jun 16, 2014 at 5:14 PM, Nicolas Frisby <[email protected]> wrote: > FYI it's #7828, not #7282. > > Jan, I'm very glad you're working on this. Thanks! > > > On Mon, Jun 16, 2014 at 2:33 PM, Jan Stolarek <[email protected]> > wrote: > >> > Why do you want this? The danger I see lurking is that you might find >> two >> > RdrNames that give the same answer to getUnique but represent different >> Yes, that's exactly my concern. >> >> > Why do you want this? >> I'm working on #7282 - RebindableSyntax and Arrows. Here's a snippet from >> desugaring of arrow >> notation: >> >> leaves = concatMap leavesMatch matches >> where >> leavesMatch :: LMatch Id (Located (body Id)) -> [(Located (body Id), >> IdSet)] >> leavesMatch (L _ (Match pats _ (GRHSs grhss binds))) >> = let defined_vars = mkVarSet (collectPatsBinders pats) >> `unionVarSet` >> mkVarSet (collectLocalBinders >> binds) >> in [(body, mkVarSet (collectLStmtsBinders stmts) >> `unionVarSet` defined_vars) | L _ >> (GRHS stmts body) <- grhss] >> >> This is in the desugarer. But I need to also know `length leaves` at the >> renaming stage, which >> means I need to call `concatMap leavesMatch matches`. The problem is that >> in the renamer my >> datatypes are not parametrised by `Id`. I turned `Id` into a type >> parameter `id`, but then I >> can't use VarSets. I could use more general UniqueSets but only if `id` >> type parameter is an >> instance of Uniquable. And since in the renamer the datatypes are >> parametrized with RdrName this >> leads me to wanting Uniqable RdrName instance. >> >> Janek >> _______________________________________________ >> ghc-devs mailing list >> [email protected] >> http://www.haskell.org/mailman/listinfo/ghc-devs >> > > > _______________________________________________ > ghc-devs mailing list > [email protected] > http://www.haskell.org/mailman/listinfo/ghc-devs > >
_______________________________________________ ghc-devs mailing list [email protected] http://www.haskell.org/mailman/listinfo/ghc-devs
