Re: [GHC] #3073: Avoid reconstructing dictionaries in recursive instance methods

2009-04-14 Thread GHC
#3073: Avoid reconstructing dictionaries in recursive instance methods
-+--
Reporter:  simonpj   |Owner:  
Type:  run-time performance bug  |   Status:  new 
Priority:  normal|Milestone:  6.12 branch 
   Component:  Compiler  |  Version:  6.10.1  
Severity:  normal|   Resolution:  
Keywords:|   Difficulty:  Unknown 
Testcase:|   Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  |  
-+--
Changes (by igloo):

  * milestone:  = 6.12 branch

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/3073#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


[GHC] #3073: Avoid reconstructing dictionaries in recursive instance methods

2009-03-05 Thread GHC
#3073: Avoid reconstructing dictionaries in recursive instance methods
---+
  Reporter:  simonpj   |  Owner:  
  Type:  run-time performance bug  | Status:  new 
  Priority:  normal|  Milestone:  
 Component:  Compiler  |Version:  6.10.1  
  Severity:  normal|   Keywords:  
Difficulty:  Unknown   |   Testcase:  
Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
---+
 Ganesh writes: I have a problem in GHC 6.10 with functions in a class
 instance calling
 other functions in the same class instance. It seems that the dictionary
 is freshly constructed for this call, despite being already available.

 The reason I care is that I want to memoise some expensive computations
 inside the dictionary for each instance. [Obviously I also have to make
 sure that the dictionary isn't constructed multiple times by external
 callers, but I can make other arrangements to ensure that.]

 To see the problem in action, run main from the attached code. In GHC 6.8
 and before, this only executes the trace statement once. In GHC 6.10, the
 trace statement executes twice, at all optimisation levels.

 This seems related to #2902, but I'm a little unclear on whether it's the
 same problem or not.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/3073
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