1. 14 Jun, 2008 9 commits
  2. 13 Jun, 2008 1 commit
  3. 12 Jun, 2008 3 commits
  4. 11 Jun, 2008 3 commits
  5. 10 Jun, 2008 4 commits
  6. 06 Jun, 2008 16 commits
  7. 05 Jun, 2008 4 commits
    • simonpj@microsoft.com's avatar
      Vital follow-up to fix of Trac #2045 · 04d0ebc9
      simonpj@microsoft.com authored
      Sorry -- my 'validate' didn't work right and I missed a trick.
      This patch must accompany
       * Fix Trac #2045: use big-tuple machiney for implication constraints
    • simonpj@microsoft.com's avatar
    • simonpj@microsoft.com's avatar
      Comments only · 9aa2708b
      simonpj@microsoft.com authored
    • simonpj@microsoft.com's avatar
      Desugar multiple polymorphic bindings more intelligently · a3f24157
      simonpj@microsoft.com authored
      Occasionally people write very large recursive groups of definitions. 
      In general we desugar these to a single definition that binds tuple,
      plus lots of tuple selectors.  But that code has quadratic size, which
      can be bad.
      This patch adds a new case to the desugaring of bindings, for the
      situation where there are lots of polymorphic variables, but no
      dictionaries.  (Dictionaries force us into the general case.)
      See Note [Abstracting over tyvars only].  
      The extra behaviour can be disabled with the (static) flag
      in case we want to experiment with switching it on or off.  There is
      essentially-zero effect on the nofib suite though.
      I was provoked into doing this by Trac #1136.  In fact I'm not sure
      it's the real cause of the problem there, but it's a good idea anyway.