Edison RC3
Robert Dockins
robdockins at fastmail.fm
Wed Apr 5 12:30:26 EDT 2006
On Apr 5, 2006, at 11:34 AM, Nils Anders Danielsson wrote:
> On Wed, 05 Apr 2006, Robert Dockins <robdockins at fastmail.fm> wrote:
>
>> So you think it would be clearer if I just ignored bottom as well?
>
> It would be imprecise instead of wrong. :)
I suppose if you force the reader to evaluate documentation non-
deterministically, then you can presume your documentation is correct
if there is any correct interpretation they might have chosen ;-)
> Another option is to go for some sort of approximate semantics which
> still includes bottoms. You could for instance assume that bottom =
> const bottom, and state your results in that context. Verifying the
> results would still mean a lot of work, though.
Humm. Well, I'd actually prefer not to have to say anything about
bottom. I'm really only interested in telling the user that output
of a function is not completely determined by the contract. <shakes
fist> Dang you bottom! I'll have to think some more about what to do
here and see if there's a nice way to sidestep the issue entirely.
> By the way, does your library have a QuickCheck test suite?
Yes indeed.
> In that
> case it is often not too hard to test properties involving bottoms. I
> have a library which may be of help:
> http://www.cs.chalmers.se/~nad/software/ChasingBottoms/docs/
Nice! I notice however, that it relies on exceptions and implicit
parameters. I'm willing to accept less portability in the test suite
than in the library proper, but I feel that implicit parameters are
pushing it a bit, since they appear unlikely to make it into H'.
> --
> /NAD
>
Rob Dockins
Speak softly and drive a Sherman tank.
Laugh hard; it's a long way to the bank.
-- TMBG
More information about the Libraries
mailing list