On 28-Sep-1999, Paul Hudak <[EMAIL PROTECTED]> wrote:
> > Haskell's (&&) only models the logical AND when it is passed booleans.
> > To say that _|_ is a Haskell Boolean, is to create another concept
> > domain (Haskell Boolean), which shares many properties with Logic
> > Boolean but is not identical with it.
> 
> Right, but it is important to realize that when reasoning about programs
> in most languages, the "logical" Boolean domain is not enough, since
> most languages permit errors and non-termination; thus a richer domain
> is needed.

That depends on what you want to reason about.

If you just want to reason about whether the program produces wrong answers,
then the "logical" Boolean domain works fine.

If you want to reason about performance, then Haskell's standard
denotational semantics is not rich enough either.

-- 
Fergus Henderson <[EMAIL PROTECTED]>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger [EMAIL PROTECTED]        |     -- the last words of T. S. Garp.



Reply via email to