On 2019-10-23 00:30, Emil Dotchevski via Boost wrote:
On Tue, Oct 22, 2019 at 1:50 PM Andrey Semashev via Boost < boost@lists.boost.org> wrote:
IMO, we should reuse the well designed, reviewed and tested code that we already have (and Boost.Spirit is an example of such). Otherwise all that work someone put in that code was done in vain.
Not always. The exception is when a library can have zero dependencies, which is very valuable for low level libraries. For example, in LEAF I need a piece of mp11, but I've copied that piece over in LEAF so there's no dependency on anything.
If you have one dependency, you might as well have 2 or 3.
Well, it depends on the amount of code you duplicate, but in general by duplicating code you're not removing code from user, you're adding it and hiding it from user. In other words, the user will have to compile your duplicated code and any other duplicates he may use directly or indirectly. In the end, you made it worse for the user.