1. 27 Apr, 2009 6 commits
  2. 26 Apr, 2009 3 commits
  3. 25 Apr, 2009 1 commit
  4. 24 Apr, 2009 8 commits
  5. 23 Apr, 2009 6 commits
  6. 21 Apr, 2009 5 commits
  7. 20 Apr, 2009 1 commit
    • Simon Marlow's avatar
      FIX #2845: Allow breakpoints on expressions with unlifted type · 709c9ce0
      Simon Marlow authored
      It turns out we can easily support breakpoints on expressions with
      unlifted types, by translating 
      
        case tick# of _ -> e
      
      into
      
        let f = \s . case tick# of _ -> e 
        in  f realWorld#
      
      instead of just a plain let-binding.  This is the same trick that GHC
      uses for abstracting join points of unlifted type.
      
      In #2845, GHC has eta-expanded the tick expression, changing the
      result type from IO a to (# State#, a #), which was the reason the
      tick was suddenly being ignored.  By supporting ticks on unlifted
      expressions we can make it work again, although some confusion might
      arise because _result will no longer be available (it now has
      unboxed-tuple type, so we can't bind it in the environment).  The
      underlying problem here is that GHC does transformations like
      eta-expanding the tick expressions, and there's nothing we can do to
      prevent that.
      709c9ce0
  8. 03 Apr, 2009 1 commit
  9. 20 Apr, 2009 3 commits
  10. 19 Apr, 2009 1 commit
  11. 18 Apr, 2009 3 commits
  12. 17 Apr, 2009 1 commit
    • waern's avatar
      Simplify the type grammar · ef70af35
      waern authored
      Simon P-J suggested the following simplifications in #3097:
      
      * Allow nested foralls in `ctype` just like in `ctypedoc`.
      * Use `gentype` rather than `type` in the LHS of type declarations.
      * Inline `type` in `ctype`.
      * Rename `gentype` to `type`.
      
      This patch does this. Also, the equivalent thing is done for documented types.
      ef70af35
  13. 13 Apr, 2009 1 commit