|
Boost : |
Subject: Re: [boost] Should Boost adopt pimpl/d-pointer as much as it can?
From: Emil Dotchevski (emildotchevski_at_[hidden])
Date: 2010-03-21 18:37:03
On Sun, Mar 21, 2010 at 8:14 AM, Jeff Flinn
<TriumphSprint2000_at_[hidden]> wrote:
> If you look at the archives of this mailing list, you will see that there
> was a concerted effort to keep libraries header-only in order to avoid the
> myriad of problems involved in ensuring that boost libraries are compiled
> with ALL required settings to be compatible with the users' build targets.
> In my experience - which I think the archives mirror - header-only libraries
> are easier to incorporate into existing build procedures, and enjoy a higher
> adoption rate due to that fact.
This line of thought misses the point of physically decoupling
implementation details from interfaces. It *is* easier not to do it,
this doesn't prove that it's better not to do it. A credit card with
low introductory interest rate also enjoys higher adoption rate due to
that fact, but it doesn't mean it's necessarily a good long term
choice.
The point of avoiding physical coupling is that changes in
implementation details don't require user code to recompile. An
important side effect is that the need for the ABIs to match is
greatly reduced; so you *can* have a particular library compiled with
different compiler options and that's OK.
Emil Dotchevski
Reverge Studios, Inc.
http://www.revergestudios.com/reblog/index.php?n=ReCode
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk