<div dir="ltr"><div class="gmail_default" style="font-family:monospace,monospace">Hi all,</div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">Given a module with top-level (functions) f1 ... fn, </div><div class="gmail_default" style="font-family:monospace,monospace">I would like to generate/compile an "instrumented" </div><div class="gmail_default" style="font-family:monospace,monospace">version where, say, each function prints the string </div><div class="gmail_default" style="font-family:monospace,monospace">"hello", every time it is called.</div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">Can anyone suggest some ways of doing this? </div><div class="gmail_default" style="font-family:monospace,monospace">One option is a core-to-core transform with an </div><div class="gmail_default" style="font-family:monospace,monospace"> </div><div class="gmail_default" style="font-family:monospace,monospace">    unsafePerformIO (print "hello")</div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">stuck into the appropriate places. But perhaps there </div><div class="gmail_default" style="font-family:monospace,monospace">are better ways? Ideally I'd like to instrument each </div><div class="gmail_default" style="font-family:monospace,monospace">"App" to log every function application.</div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">Are other libraries or tools that use the GHC API </div><div class="gmail_default" style="font-family:monospace,monospace">to do this sort of thing? </div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">Thanks in advance!</div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">Ranjit. </div><div class="gmail_default" style="font-family:monospace,monospace"><br></div></div>