On Thu, Nov 20, 2008 at 11:57 PM, David Roundy <[EMAIL PROTECTED]> wrote: > On Thu, Nov 20, 2008 at 02:44:33AM +0300, Dmitry Kurochkin wrote: >> hunk ./src/Darcs/Patch/Real.hs 175 >> > a:>p':>b -> >> > do (b',xs') <- mac b xs >> > goneby >> > --traceDoc >> > (greenText "foo1" $$ >> > - -- >> > showPatch (sort_coalesceFL $ >> > - -- >> > effect $ p':<:a)) $ Just () >> > - NilFL <- return $ >> > sort_coalesceFL $ effect $ p':<:a >> > + -- >> > showPatch (sort_coalesce_effects $ p':<:a)) $ Just () >> > + NilFL <- return $ >> > sort_coalesce_effects $ p':<:a >> > return (reverseRL >> > (p':<:a)+>+b', xs') >> > `mplus` do NilFL <- >> > return goneby >> >> Use sort_coalesce_effects instead of sort_coalesceFL. >> >> It would be easier to read if "sort_coalesce_effects $ p':<:a" is >> bound to a name with let. Not sure if it worth changing though. > > But alas, that would cause ghc's brain to explode. NilFL is a GADT, > and you can't use let bindings with GADT patterns. This relates to > the fact that matching NilFL puts a constraint on the type witnesses, > and because let bindings are lazy, they don't work well with that.
I did not know that. Thanks for the explanation! Regards, Dmitry > > David > _______________________________________________ > darcs-users mailing list > [email protected] > http://lists.osuosl.org/mailman/listinfo/darcs-users > _______________________________________________ darcs-users mailing list [email protected] http://lists.osuosl.org/mailman/listinfo/darcs-users
