[GHC] #10711: Defining mapM_ in terms of traverse_ causes substantial blow-up in ByteCodeAsm
GHC
ghc-devs at haskell.org
Mon Aug 3 16:09:56 UTC 2015
#10711: Defining mapM_ in terms of traverse_ causes substantial blow-up in
ByteCodeAsm
-------------------------------------+-------------------------------------
Reporter: bgamari | Owner: bgamari
Type: bug | Status: closed
Priority: normal | Milestone:
Component: Compiler | Version:
Resolution: fixed | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Compile-time | Unknown/Multiple
performance bug | Test Case: ghcirun004
Blocked By: | Blocking:
Related Tickets: | Differential Revisions:
-------------------------------------+-------------------------------------
Changes (by bgamari):
* cc: core-libraries-committee@… (added)
* status: new => closed
* resolution: => fixed
Comment:
Thanks akio for the analysis!
It seems pretty clear that rewriting `mapM_` in terms of `traverse_` does
not preserve the performance characteristics of user code in general. I'm
going to close this and push the matter off to the Core Libraries
Committee to decide what implications this might have on their future
plans (likely few given they already
[https://mail.haskell.org/pipermail/libraries/2015-May/025719.html
suspected] there was the potential for performance regressions with this
change).
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10711#comment:11>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list