Section: Misc. Reference Manual Pages (1)
Updated: October 2004
Return to Main Contents
hat-cover - highlight Haskell source expressions used in a traced run
[OPTION]... [TRACEFILE] [SOURCEFILE]...
Print to standard output a listing of each Haskell SOURCEFILE,
highlighting all expressions for which at least one instance occurs
in the hat TRACEFILE.
The TRACEFILE may be specifed with or without a
extension; similarly each SOURCEFILE may be specified with or
If no SOURCEFILE is specified
lists all sources in which there are traced expressions.
The highlighted expressions in the output are maximal expressions
represented in TRACEFILE. However, case-expressions, if-expressions
and let-expressions are not included among the candidate maximal expressions.
As a result, in outermost case/if/let layers each alternative, branch
or local definition is considered separately for highlighting.
However, where a case/if/let occurs as a part of a larger expression of some
other kind, any highlighting of the larger expression will also highlight
the entire case/if/let.
More generally, one
cannot infer from the highlighting of an expression that every subexpression
within it was needed at some point in the traced computation.
Extra detail in coverage information can be obtained if necessary
by lifting out key subexpressions as the right-hand-sides
of local definitions.
- -hion=onchars, -hioff=offchars
options reset the character-sequence codes used to switch highlighting
on and off in the output.
Written by Colin Runciman.
Some lone-variable expressions are not candidate
maximal expressions for highlighting --- but any entire
right-hand-side, or any alternative, branch or let-body in outermost
case/if/let layers, are always candidates.
Some trailing brackets in expressions are not included in highlighting.
Both problems are consequences of the current hat trace representation.
Report bugs to <firstname.lastname@example.org>.
Copyright © 2004 University of York.
This is free software without warranty of any kind.
program is one of many tools in the
tracing system for Haskell programs.
For further information about
- REPORTING BUGS
- SEE ALSO
This document was created by
using the manual pages.
Time: 13:31:37 GMT, October 12, 2004