
#14610: newtype wrapping of a monadic stack kills performance -------------------------------------+------------------------------------- Reporter: mrkkrp | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.6.1 Component: Compiler | Version: 8.2.2 Resolution: | Keywords: JoinPoints Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: #14620 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by nomeata): Ok, thanks for the clarification. Finally I get why that restriction is there. I will try to improve the Note about it (and pass it by you for confirmation). I think the transformation is possible, but it is somewhat non-local, as you need to move all casts inwards towards the recursive call, and then into the newly added parameter. Ff we find that there are performance gains to be won, then it might be worth it! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14610#comment:21 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler