[GHC] #9781: Make list monad operations fuse

GHC ghc-devs at haskell.org
Fri Nov 7 09:19:08 UTC 2014


#9781: Make list monad operations fuse
-------------------------------------+-------------------------------------
       Reporter:  dfeuer             |                   Owner:  dfeuer
           Type:  task               |                  Status:  new
       Priority:  normal             |               Milestone:  7.10.1
      Component:  Core Libraries     |                 Version:  7.9
       Keywords:                     |        Operating System:
   Architecture:  Unknown/Multiple   |  Unknown/Multiple
     Difficulty:  Unknown            |         Type of failure:  Runtime
     Blocked By:                     |  performance bug
Related Tickets:                     |               Test Case:
                                     |                Blocking:
                                     |  Differential Revisions:  Phab:D455
-------------------------------------+-------------------------------------
 We like to think that `do {x <- xs; y <- f x ; return g y}` is the same as
 `[g y | x <- xs, y <- f x]`, but the former does not fuse nearly as well.
 Let's fix that.

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


More information about the ghc-tickets mailing list