hat-2.7.0.0: docs/bugs.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><title>Hat 2.04 Bugs and Limitations</title></head>
<body text="#000000" bgcolor="#FFFFFF" link="#0000EE" vlink="#551A8B" alink="#FF0000">
<center>
<img src="hat.gif" alt="Hat Logo"><br>
<h1>Hat 2.04 Bugs and Limitations</h1>
</center>
<hr>
<p>
This is a list of all known bugs and limitations in Hat 2.04.
There is also a <a href="todo.html">wish-list</a> of features
that we would like to add to Hat.
Please mail
<a href="mailto:hat@haskell.org">hat@haskell.org</a>
to report any other problems you find.
<h3>hat-trans problems:</h3>
<p>
<ul>
<li><em>hat-trans</em> output fails to compile if the source program
depends on defaults to resolve numeric types.
(See <a href="faq.html">FAQ</a> for workaround.)
</li>
<li><em>hat-trans</em> can fail if the arity of source definitions
or applications is large.
(See <a href="faq.html">FAQ</a> for workaround.)
</li>
<li>Data constructions used in a trusted context are hidden if they are
evaluated there before the result is demanded in an untrusted
context.
</li>
<li><em>hat-trans</em> generates type-incorrect code for FFI declarations
(foreign imports).
</ul>
<h3>Run-time problems:</h3>
<p>
<ul>
<li>Programs that exhaust memory fail with an incomplete trace file.</li>
</ul>
<h3>Problems with viewing a trace</h3>
<h4>General</h4>
<ul>
<li>List comprehensions and arithmetic ranges
are not traced at source level: they are recorded and displayed
in de-sugared form.
</li>
<li><font color=red>Fixed in Hat 2.04</font>
<em>do</em> statements are not traced at source level.
</li>
<li>Super-saturated applications are not shown.
</li>
<li>Traces involving pattern bindings may be incomplete.
</li>
<li><font color=red>Fixed in Hat 2.02</font>
Named fields are not traced at source level.
</li>
<li><font color=red>Fixed in Hat 2.02</font>
The viewing tools display some lists misleadingly: when the tail
of a sugared list is cut off or undefined it is shown as if it
was a final element.
</li>
</ul>
<h4>Hat-observe</h4>
<ul>
<li><em>hat-observe</em> inappropriately lists trusted CAFs under :info and
allows observations of CAF values that should be hidden.
</li>
<li><em>hat-observe</em> may incorrectly show applications as distinct when
arguments include a cyclic structure. (Example program: Cycles)
</li>
<li>^C in a <em>hat-observe</em> window (to cut short a search) can shut
down a <em>hat-trail</em> window spawned from the same
<em>hat-observe</em> session.
</li>
<li><font color=red>Fixed in Hat 2.02</font>
After <em>:set recursive off</em> hat-observe shows the non-recursive
calls of f even if given the application pattern <em>f in f</em>.
(Example program: ObsRec)
</li>
<li><font color=red>Fixed in Hat 2.02</font>
<em>hat-observe</em> :info counts may not match the number of observations
if there are partial or super-saturated applications. (Example program:
MixArity)
</li>
</ul>
<h4>Hat-trail</h4>
<ul>
<li>If the output is empty, it cannot be selected.
</li>
<li>The display can become corrupted if output or error message
from the traced program is wider than the display window.
</li>
<li><font color=red>Fixed in Hat 2.02</font>
Scrolling sometimes blanks the upper part of the display when
the trace is extended and is deeper than the window. (Example
program: BigExp)
</li>
<li><font color=red>Fixed in Hat 2.02</font>
The display can become corrupted if a single trail expression or
equation is large enough to scroll off the screen. (Example
program: BigExp)
</li>
</ul>
<h4>Hat-detect</h4>
<ul>
<li><font color=red>Fixed in Hat 2.04</font>
<em>hat-detect</em> is not currently included with the Hat browsing tools.
</li>
<li><font color=red>Fixed in CVS version</font>It may assume that an application of a trusted function is OK, even
if it has suspect children. Thus, the algorithm to locate the bug
may occasionally go wrong.
</li>
<li><font color=red>Fixed in CVS version</font>Only useable for computations that produce faulty output, not for
computations that abort with an error message or are interrupted.
</li>
<li><font color=red>Fixed in CVS version</font>Does not work correctly for programs that read input.
</li>
</ul>
<hr>
<p>
This page last modified: 12th October 2004<br>
</body></html>