
#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