[GHC] #12364: Demand analysis for sum types

GHC ghc-devs at haskell.org
Mon Jul 4 16:25:13 UTC 2016


#12364: Demand analysis for sum types
-------------------------------------+-------------------------------------
        Reporter:  nomeata           |                Owner:
            Type:  task              |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.0.1
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by nomeata):

 >  Currently if a call site looks like f (Just (p+q)) we'll build a thunk
 for p+q. But f always evaluates it, so that thunk is useless; we could use
 call-by-value.

 Actually inlining would require strictness analysis, wouldn’t it?
 Extending that to sums might work, but I was looking into demand analysis
 right now. There, we would be able to turn the thunk into a non-updateable
 one.

 I’m sure I was not confusing it with CPR, but I guess in comment:3 I was
 thinking about let-up vs. let-down, and that some examples would look
 better if the analysis would work the other way.

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


More information about the ghc-tickets mailing list