[GHC] #9496: Simplify primitives for short cut fusion

GHC ghc-devs at haskell.org
Fri Aug 22 08:59:44 UTC 2014


#9496: Simplify primitives for short cut fusion
-------------------------------------+-------------------------------------
              Reporter:  dfeuer      |            Owner:  dfeuer
                  Type:  task        |           Status:  new
              Priority:  normal      |        Milestone:
             Component:              |          Version:  7.8.3
  libraries/base                     |         Keywords:  fusion
            Resolution:              |     Architecture:  Unknown/Multiple
      Operating System:              |       Difficulty:  Unknown
  Unknown/Multiple                   |       Blocked By:
       Type of failure:  Other       |  Related Tickets:
             Test Case:              |
              Blocking:              |
Differential Revisions:              |
-------------------------------------+-------------------------------------

Comment (by simonpj):

 I believe that there are good reasons for distinguishing build and
 augment.  [http://research.microsoft.com/en-us/um/people/simonpj/papers
 /andy-thesis.ps.gz Andy Gill's thesis] would be a good place to look.
 But perhaps one could do everything in terms of augment; I'm not sure.
 Worth a try.

 I think there is really only one primitive consumer, foldr.  I thought we
 rewrote into foldr and then back.  If that is not done for or, any, etc,
 I'm not sure why.  Again, perhaps worth investigation.

 Certainly the original goal of the foldr/build paper was to say "ONE rule,
 not n*m rules".

 Simon

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


More information about the ghc-tickets mailing list