Re: [GHC] #4976: zipWith static argument transformation
#4976: zipWith static argument transformation --+- Reporter: aristidb | Owner: Type: feature request | Status: closed Priority: normal | Milestone: Component: libraries/base |Version: 7.0.1 Resolution: wontfix | Keywords: Testcase: | Blockedby: Difficulty: | Os: Unknown/Multiple Blocking: | Architecture: Unknown/Multiple Failure: None/Unknown | --+- Changes (by igloo): * status: new = closed * resolution: = wontfix Comment: In the absence of evidence that it's a net gain, I'll close this ticket. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/4976#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #4976: zipWith static argument transformation
#4976: zipWith static argument transformation -+-- Reporter: aristidb |Owner: Type: feature request | Status: new Priority: normal|Milestone: Component: libraries/base| Version: 7.0.1 Keywords:| Testcase: Blockedby:| Difficulty: Os: Unknown/Multiple | Blocking: Architecture: Unknown/Multiple | Failure: None/Unknown -+-- Comment(by simonpj): Is this biting you in practice? Do you have numbers to show that it's significant? To make it work you'd have to have an INLINE pragma too, and that has a code-size impact on the clients. -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/4976#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [GHC] #4976: zipWith static argument transformation
#4976: zipWith static argument transformation -+-- Reporter: aristidb |Owner: Type: feature request | Status: new Priority: normal|Milestone: Component: libraries/base| Version: 7.0.1 Keywords:| Testcase: Blockedby:| Difficulty: Os: Unknown/Multiple | Blocking: Architecture: Unknown/Multiple | Failure: None/Unknown -+-- Comment(by aristidb): No, it is not biting me in practice. I just noticed this when looking at the source code for zipWith, briefly mentioned it on IRC (in #haskell), and Daniel Peebles asked me to file a bug report or mention it on libraries@. So if there are overriding reasons not to do it... -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/4976#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[GHC] #4976: zipWith static argument transformation
#4976: zipWith static argument transformation -+-- Reporter: aristidb | Owner: Type: feature request | Status: new Priority: normal| Component: libraries/base Version: 7.0.1 |Keywords: Testcase:| Blockedby: Os: Unknown/Multiple |Blocking: Architecture: Unknown/Multiple | Failure: None/Unknown -+-- Currently, zipWith cannot be inlined (I think), because it is implemented as such: {{{ zipWith :: (a-b-c) - [a]-[b]-[c] zipWith f (a:as) (b:bs) = f a b : zipWith f as bs zipWith _ _ _ = [] }}} So why not apply this SAT: {{{ zipWith f = go where go (a:as) (b:bs) = f a b : go as bs go _ _ = [] }}} -- Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/4976 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs