|
Boost : |
Subject: Re: [boost] [contract] toward N3351 concepts
From: Evgeny Panasyuk (evgeny.panasyuk_at_[hidden])
Date: 2012-10-13 13:23:30
11.10.2012 11:46, Andrzej Krzemienski wrote:
> Lorenzo's library offers the capability of declaring preconditions that
> must never be executed. This addresses your examples above (with
> InputIterator-based range and runtime complexity of lower_bound). See here:
> http://contractpp.svn.sourceforge.net/viewvc/contractpp/releases/contractpp_0_4_1/doc/html/contract__/advanced_topics.html#contract__.advanced_topics.assertion_requirements
Ok, I see - there is overlapping with axiomatic_assert.
And thank you for detailed answer!
> To wrap up, I believe that contract-programming's primary feature is to be
> able to express assumptions that you may hold for granted. Being able to
> check these at run-time is just a bonus.
So it looks like there are several view points on it. As far as I
understand (sorry if I am wrong), Lorenzo wants checking not just like a
bonus, but as one of primary goals:
"IMO, this is a rather weak motivation to support axioms especially in
the core language (just the syntax check of some code that could
otherwise and almost equivalently be written using code comments) but it
seems to be the only sensible thing to do with axioms. "
Best Regards,
Evgeny
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk