On 10/05/2024 16:26, Peter Dimov via Boost wrote:
Niall Douglas wrote:
Myself and Boost have had a confrontational relationship in the past, but in my opinion (you and other will disagree), y'all after arguing heavily with me at the time then a few years later went ahead and quietly implemented almost everything I suggested. So I'm good with Boost at the present time - I spoke, you listened, you eventually implemented much of it. Rock on!
I have to admit that I can't at the moment think of any feature about which I argued with you when you proposed it, and then went ahead and quietly implemented later.
You've done lots of stuff yourself personally, but so have most of the rest of the core Boost maintainers. Stuff I suggested back 2012-2015. Stuff which didn't win me much love here at the time. The biggest two of my early suggestions that you (as a group) have since implemented I was most appreciating recently are the cmake build support and the much, much better dependency and isolation graph between bits of Boost. Recently I hacked out Boost.Context, stripped it of the bits I didn't need, reused the cmake you wrote for it, and voila standalone reusable component. Took me minutes, not hours or days. **Yay** Boost. This isn't an isolated case. Last dayjob we had a fork of Boost with all the symbols changed so it wouldn't clash with Boost. Generating that fork became ever increasingly easier over time as you and the other core Boost maintainers kept fixing and improving stuff. All very small, tedious, boring little stuff. But it really adds up over time, makes a very big difference. **Yay** Boost.
It's also true that system::result is very similar to outcome::result (and std::expected), but I don't think I argued with you about having that, either.
I'm perfectly willing to concede that you were there first. It's the arguing against part that I have no recollection of.
All that came much later, and to be fair, the std::error design wasn't my own, it was derived from a group of people on SG14. Which you then iterated upon for Boost.System. Which is exactly how software engineering excellence is achieved. Always grab the best bits from anything you see. Yay Boost. Niall