On Sun, 31 Oct 2010 11:54:18 -0400
David Simcha <[email protected]> wrote:
> 3. An alwaysAssert() function that stays on in release mode but is
> otherwise equivalent to assert(). I had been using enforce() for this,
> but I don't like that anymore because it throws Exception, not
> AssertError by default. This means that if I write catch(Exception), I
> could accidentally be catching what is effectively an assertion
> failure. Since assert() is supposed to be terse to encourage the
> programmer to use it liberally, explicitly passing AssertError to
> enforce() doesn't cut it. Mostly what I need here is a better/terser
> name than alwaysAssert(). Given the nature of this feature, I'd say
> terseness actually beats explicitness. The best I've come up w/ so far
> is rassert() for release assert.
Hello,
[New to D. Mainly subscribed to the list as a help in getting to know the lib
quicklier.]
"Release asserts" seem to me nearly a necessary feature. (Precisely, bugs have
the unpleasant habit of hiding during test phases.]
As for names:
predict(n != 0) playing with "predicate"
exclude(n == 0) reversing the assertion
The latter looks good to me in the sense contract.
Denis
-- -- -- -- -- -- --
vit esse estrany ☣
spir.wikidot.com
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos