1. 12 Jan, 2013 3 commits
  2. 08 Jan, 2013 3 commits
  3. 03 Jan, 2013 1 commit
  4. 02 Jan, 2013 1 commit
  5. 01 Jan, 2013 1 commit
  6. 28 Dec, 2012 2 commits
  7. 24 Dec, 2012 2 commits
    • Simon Peyton Jones's avatar
      Make sum and product INLINABLE · f251bf58
      Simon Peyton Jones authored
      This was causing the bad behaviour in Trac #7507,
      because 'sum' wasn't getting specialised to Int64.
      
      It also deals with Trac #4321, which had the same cause.
      
      This has a big effect on some nofib programs too:
      
      --------------------------------------------------------------------------------
              Program           Allocs   Runtime   Elapsed  TotalMem
      ------------------------------------------------------------------------
           bernouilli            -2.6%     -2.0%     -2.0%     +0.0%
                 fft2           -23.8%      0.09      0.09    -16.7%
                fluid            -4.4%      0.01      0.01     +0.0%
               hidden            -3.2%     +2.1%     +1.8%     +0.0%
            integrate           -38.0%    -47.7%    -47.7%     -1.0%
                 x2n1           -30.2%      0.01      0.01    -50.0%
      ------------------------------------------------------------------------
                  Min           -38.0%    -47.7%    -47.7%    -50.0%
                  Max            +0.4%    +11.2%    +11.8%     +6.9%
       Geometric Mean            -1.3%     +0.2%     +0.2%     -0.8%
      f251bf58
    • Simon Peyton Jones's avatar
  8. 22 Dec, 2012 1 commit
  9. 21 Dec, 2012 2 commits
  10. 13 Dec, 2012 6 commits
  11. 11 Dec, 2012 1 commit
  12. 10 Dec, 2012 2 commits
    • Simon Marlow's avatar
      Add back new working QSem and QSemN implementations (#7417) · 2f32d1d2
      Simon Marlow authored
      We decided not to break existing users without providing an easy
      migration path.  For the time being I've made these implementations,
      which fix the bugs in the old versions and perform reasonably well.
      
      In due course we should move the concurrency functionality, including
      these modules, out of base and into a separate package.
      2f32d1d2
    • Simon Marlow's avatar
      Make a class for asynchronous exceptions in the exception hierarchy · 756a970e
      Simon Marlow authored
      Right now, we only have
      
      data AsyncException
        = StackOverflow
        | HeapOverflow
        | ThreadKilled
        | ...
      
      so it is not possible to add another async exception.  For instance,
      the Timeout exception in System.Timeout should really be an async
      exception.
      
      This patch adds a superclass for all async exceptions:
      
      data SomeAsyncException = forall e . Exception e => SomeAsyncException e
        deriving Typeable
      
      and makes the existing AsyncException and Timeout children of
      SomeAsyncException in the hierarchy.
      756a970e
  13. 06 Dec, 2012 2 commits
  14. 04 Dec, 2012 1 commit
  15. 02 Dec, 2012 3 commits
  16. 01 Dec, 2012 1 commit
  17. 30 Nov, 2012 5 commits
  18. 23 Nov, 2012 1 commit
  19. 21 Nov, 2012 1 commit
  20. 20 Nov, 2012 1 commit