1. 01 Nov, 2012 1 commit
  2. 31 Oct, 2012 2 commits
  3. 26 Oct, 2012 1 commit
  4. 25 Oct, 2012 1 commit
  5. 12 Oct, 2012 1 commit
  6. 09 Oct, 2012 4 commits
  7. 08 Oct, 2012 1 commit
  8. 03 Oct, 2012 1 commit
  9. 02 Oct, 2012 1 commit
  10. 27 Sep, 2012 1 commit
  11. 26 Sep, 2012 1 commit
    • Edward Z. Yang's avatar
      Partially fix #367 by adding HpLim checks to entry with -fno-omit-yields. · d3128bfc
      Edward Z. Yang authored
      The current fix is relatively dumb as far as where to add HpLim
      checks: it will always perform a check unless we know that we're
      returning from a closure or we are doing a non let-no-escape case
      analysis.  The performance impact on the nofib suite looks like this:
      
                  Min          +5.7%     -0.0%     -6.5%     -6.4%    -50.0%
                  Max          +6.3%     +5.8%     +5.0%     +5.5%     +0.8%
       Geometric Mean          +6.2%     +0.1%     +0.5%     +0.5%     -0.8%
      
      Overall, the executable bloat is the biggest problem, so we keep the old
      omit-yields optimization on by default. Remember that if you need an
      interruptibility guarantee, you need to recompile all of your libraries
      with -fno-omit-yields.
      
      A better fix would involve only inserting the yields necessary to break
      loops; this is left as future work.
      Signed-off-by: Edward Z. Yang's avatarEdward Z. Yang <ezyang@mit.edu>
      d3128bfc
  12. 06 Sep, 2012 1 commit
  13. 03 Sep, 2012 3 commits
  14. 25 Aug, 2012 1 commit
  15. 20 Aug, 2012 1 commit
  16. 14 Aug, 2012 2 commits
  17. 13 Aug, 2012 1 commit
  18. 03 Aug, 2012 1 commit
  19. 16 Jul, 2012 3 commits
  20. 13 Jul, 2012 1 commit
  21. 05 Jul, 2012 1 commit
  22. 26 Jun, 2012 1 commit
  23. 20 Jun, 2012 1 commit
  24. 18 Jun, 2012 2 commits
  25. 15 Jun, 2012 1 commit
  26. 14 Jun, 2012 2 commits
  27. 12 Jun, 2012 2 commits
    • Ross Paterson's avatar
      tweak documentation of mdo/rec · 96a37685
      Ross Paterson authored
      96a37685
    • Simon Peyton Jones's avatar
      Revive 'mdo' expressions, per discussion in Trac #4148 · 4f8e86b4
      Simon Peyton Jones authored
      Summary:
        - mdo expressions are enabled by RecursiveDo pragma
      
        - mdo expressions perform full segmentation
      
        - 'rec' groups inside 'do' are changed so they do *not*
          perform any segmentation.
      
        - Both 'mdo' and 'rec' are enabled by 'RecursiveDo'
          'DoRec' is deprecated in favour of 'RecursiveDo'
          (The 'rec' keyword is also enabled by 'Arrows', as now.)
      
      Thanks to Levent for doing all the work
      4f8e86b4
  28. 07 Jun, 2012 1 commit
    • Simon Peyton Jones's avatar
      Support polymorphic kind recursion · c9117200
      Simon Peyton Jones authored
      This is (I hope) the last major patch for kind polymorphism.
      The big new feature is polymorphic kind recursion when you
      supply a complete kind signature for a type constructor.
      (I've documented it in the user manual too.)
      
      This fixes Trac #6137, #6093, #6049.
      
      The patch also makes type/data families less polymorphic by default.
         data family T a
      now defaults to T :: * -> *
      If you want T :: forall k. k -> *, use
         data family T (a :: k)
      
      This defaulting to * is done whenever there is a
      "complete, user-specified kind signature", something that is
      carefully defined in the user manual.
      
      Hurrah!
      c9117200