To get a trace message, you need to attach the trace to something that does get evaluated. I mostly define a somewhat simpler helper like this:
tt :: Show a => a -> a
tt x = trace (show x) x
So you surround your expressions with it and see there values, when those values get evaluated of course. Eg: myParser = (\_ code -> tt code) <$> parseComment <*> parseCode