On 10/10/06, Ian Lynagh <[EMAIL PROTECTED]> wrote:
On Tue, Oct 10, 2006 at 01:31:58PM +0200, Matthias Fischmann wrote:
>
> What qualifies as constant applicable form, and why is it not
> labelled in a more informative way?
CAFs are, AIUI, things that are just values (i.e. things that don't take
an argument) that have been floated up to the top level.
Actually, I don't know if this is a ghc bug but I was profiling last
week and a majority of the time/allocation was done in a CAF in a
module which didn't seem to be doing much work. Turned out in my
case that the module in question imported a function from another
package which was doing a tremendous amount of work. It wasn't until
I used -caf-all that I could see the real culprit. So, I guess a CAF
can also be a function in a library you're using. And I say function
here because the work horse definetly was not a CAF. It was hPutXml
from HaXml.
The lesson for me was that -caf-all is handy to know about.
Jason
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe