[mercury-users] Error detection rate in Mercury vs Other Languages (esp C++ and Python)

Tomas By tomas at basun.net
Sat Dec 3 04:35:13 AEDT 2011

On Fri, December 2, 2011 18:12, Chris King wrote:
> I'd like to chime in though that Mercury's failure model lets a
> particularly pernicious class of bugs slip through easily; namely,
> those bugs in which you expect a result from some predicate but
> receive none, i.e., a predicate is failing for the wrong reason.
> [...]
> Of course, this is a problem not just with Mercury, but with logic
> languages in general.  Prolog is probably the worst offender, having
> no notion of checked determinism.

After reading this I feel a certain morbid curiosity about what some
significant amount of Mercury code written by you would look like...

When I was writing non-trivial pieces of code in Prolog these were
probably the most annoying bugs I was having. You finally finish all
your various modules, get your data sorted out, and try to run the
whole application for the first time. Prolog answers: "no"

In Mercury, on the other hand, this has never been a problem for me.

If you declare the mode of all your predicates, and use non-determinism
as sparingly as possible, then this happens very rarely, is my experience.


mercury-users mailing list
Post messages to:       mercury-users at csse.unimelb.edu.au
Administrative Queries: owner-mercury-users at csse.unimelb.edu.au
Subscriptions:          mercury-users-request at csse.unimelb.edu.au

More information about the users mailing list