[GHC] #8598: IO hack in demand analyzer gets in the way of CPR

GHC ghc-devs at haskell.org
Mon Dec 9 14:51:04 UTC 2013


#8598: IO hack in demand analyzer gets in the way of CPR
-------------------------------------+------------------------------------
        Reporter:  nomeata           |            Owner:
            Type:  task              |           Status:  new
        Priority:  normal            |        Milestone:
       Component:  Compiler          |          Version:  7.6.3
      Resolution:                    |         Keywords:
Operating System:  Unknown/Multiple  |     Architecture:  Unknown/Multiple
 Type of failure:  None/Unknown      |       Difficulty:  Unknown
       Test Case:  T8598             |       Blocked By:
        Blocking:                    |  Related Tickets:
-------------------------------------+------------------------------------

Comment (by nomeata):

 Simplified my fix in
 [http://git.haskell.org/ghc.git/shortlog/refs/heads/wip/T8598 `wip/T8598`]
 (did not add a new element to the lattice, rather added a simple unary
 function to defer a !DmdType when it occurs after an IO action). Code is
 currently validating, and will be pushed afterwards.

 This branch also contains a patch “Rename topDmdType to nopDmdType”:

 > because topDmdType is ''not'' the top of the lattice, as it puts an
 > implicit absent demand on free variables, but Abs is the bottom of the
 > Usage lattice.
 >
 > Why nopDmdType? Becuase it is the demand of doing nothing: Everything
 > lazy, everything absent, no definite divergence.

 This ticket stays open to track the '''first''' issue SPJ mentioned in
 comment:2.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8598#comment:9>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list