1. 09 Dec, 2008 1 commit
  2. 13 Jan, 2009 1 commit
  3. 10 Nov, 2008 1 commit
  4. 08 Nov, 2008 2 commits
  5. 06 Nov, 2008 1 commit
  6. 30 Oct, 2008 1 commit
    • simonpj@microsoft.com's avatar
      Add (a) CoreM monad, (b) new Annotations feature · 9bcd95ba
      simonpj@microsoft.com authored
      This patch, written by Max Bolingbroke,  does two things
      
      1.  It adds a new CoreM monad (defined in simplCore/CoreMonad),
          which is used as the top-level monad for all the Core-to-Core
          transformations (starting at SimplCore).  It supports
             * I/O (for debug printing)
             * Unique supply
             * Statistics gathering
             * Access to the HscEnv, RuleBase, Annotations, Module
          The patch therefore refactors the top "skin" of every Core-to-Core
          pass, but does not change their functionality.
      
      2.  It adds a completely new facility to GHC: Core "annotations".
          The idea is that you can say
             {#- ANN foo (Just "Hello") #-}
          which adds the annotation (Just "Hello") to the top level function
          foo.  These annotations can be looked up in any Core-to-Core pass,
          and are persisted into interface files.  (Hence a Core-to-Core pass
          can also query the annotations of imported things.)  Furthermore,
          a Core-to-Core pass can add new annotations (eg strictness info)
          of its own, which can be queried by importing modules.
      
      The design of the annotation system is somewhat in flux.  It's
      designed to work with the (upcoming) dynamic plug-ins mechanism,
      but is meanwhile independently useful.
      
      Do not merge to 6.10!  
      9bcd95ba
  7. 06 Oct, 2008 1 commit
  8. 03 Oct, 2008 2 commits
  9. 26 Sep, 2008 2 commits
  10. 15 Sep, 2008 1 commit
  11. 14 Sep, 2008 3 commits
  12. 04 Sep, 2008 1 commit
    • dias@eecs.harvard.edu's avatar
      add assertion to check that UniqFM is only passed "positive" uniques · 8b7a0a10
      dias@eecs.harvard.edu authored
      The insertion code in UniqFM fails if a unique key
      produces a negative FastInt. I've added an assertion to check
      that each insertion uses a positive Unique.
      
      Where do the negative uniques come from? Both Simom M and
      I have run into this problem when computing hashes for data structures.
      In both cases, we have avoided the problem by ensuring that
      the hashes remain positive.
      8b7a0a10
  13. 28 Aug, 2008 1 commit
  14. 26 Aug, 2008 1 commit
  15. 18 Aug, 2008 1 commit
  16. 11 Aug, 2008 1 commit
  17. 07 Aug, 2008 2 commits
  18. 31 Jul, 2008 3 commits
  19. 07 Aug, 2008 1 commit
  20. 31 Jul, 2008 3 commits
  21. 04 Aug, 2008 1 commit
  22. 31 Jul, 2008 3 commits
  23. 30 Jul, 2008 1 commit
  24. 21 Jul, 2008 1 commit
  25. 20 Jul, 2008 3 commits
  26. 16 Jul, 2008 1 commit