#7436: Derived Foldable and Traversable instances become extremely inefficient
due
to eta-expansion
--------------------------------------+-------------------------------------
Reporter: shachaf | Owner:
Type: bug | Status: closed
Priority: normal | Milestone:
Component: Compiler | Version: 7.6.1
Resolution: fixed | Keywords:
Os: Unknown/Multiple | Architecture: Unknown/Multiple
Failure: Runtime performance bug | Difficulty: Unknown
Testcase: perf/should_runt/T7436 | Blockedby:
Blocking: | Related:
--------------------------------------+-------------------------------------
Changes (by simonpj):
* status: patch => closed
* testcase: => perf/should_runt/T7436
* resolution: => fixed
Comment:
Also:
{{{
commit 3d51f271e6819c52508956f2426c4c19dec0b2fb
Author: Twan van Laarhoven <[email protected]>
Date: Thu Jan 3 16:24:42 2013 +0100
Added note explaining the lambdas generated by functor deriving code,
and how it compares to the old deriving code which used eta expansion.
}}}
Thanks for the patches!
I added a test in `perf/should_run`. Interestingly the massive difference
is run-time, not in allocation or residency.
Simon
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7436#comment:17>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs