
On 15 February 2012 16:17, Dan Maftei
1 When profiling my code with -auto-all, my .prof file names some sub-expressions with a backslash. Cf. below. What are these?
e_step e_step.ewords e_step.\ e_step.\.\ e_step.update_counts e_step.fwords
My e_step function binds seven expressions inside a let, then uses them in two ugly nested folds. (Yes, very hackish) As you can see, three such expressions are named explicitly (ewords, fwords, and update_counts). But where are the rest? Further, perhaps the backslashes have something to do with the lambda expressions I am using in the two nested folds?
Yup, those are anonymous functions.
2. A related question: I tried using the SCC pragma instead of auto-all. I added it to all seven expressions inside the let, and to the nested folds. However, only two showed up in the .prof file! How come?
It would be helpful if you pasted the code. I think SCC pragmas around lambdas get ignored and you should put them inside. (It may be the other way around, though.)
Thanks ninestraycats
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Push the envelope. Watch it bend.