|
Boost : |
Subject: Re: [boost] [Review:Contract]
From: Lorenzo Caminiti (lorcaminiti_at_[hidden])
Date: 2012-09-16 23:12:57
On Sun, Sep 16, 2012 at 5:48 PM, Dave Abrahams <dave_at_[hidden]> wrote:
>
> on Sun Sep 02 2012, Roland Bock <rbock-AT-eudoxos.de> wrote:
>
>> Due to a lack of formal contracts in much of day to day programming
>> and the enormous compile time overhead, I don't see the library being
>> used all over the place anytime soon, but I expect it to be used in
>> generic algorithms, helping both developers and library users.
>
> Do we know the sources of the compile-time overhead?
No, I don't.
> If it's mostly in
> the preprocessor,
I could be in both the preprocessor (either the parsing of the syntax
or the expansion of the declaration and contract code) and/or in the
template meta-programming code.
> I suggest consulting with Paul Mensonides.
I will do some analysis first (probably after the 1st Boost release as
the meta-programming optimizations should not alter the public API):
http://sourceforge.net/apps/trac/contractpp/ticket/48
Then I will ask the experts as needed--Paul for the pp and yourself
for the MPL part ;)
> He was an
> enormous help in getting the preprocessing cost associated with
> Boost.Python under control. In particular, it's important to make good
> use of the _D, _R, and _Z suffixes described in
> http://www.boostpro.com/mplbook/preprocessor.html#id6
IMO, the syntax is "bad" but the compile-time overhead is the real
barrier for a broader use of the lib. Therefore, improving compilation
time (if at all possible) will be a priority right after the 1st Boost
release.
Thanks,
--Lorenzo
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk