News

News

RSS feed
09/22/2023
Words Matter: An Apology

To: All I am writing to you today to convey challenges I have faced regarding my interactions within our community, including Boost spaces, Standard C++ Committee meetings, and The C++ Language Slack Workspace. This year, I was diagnosed as neurodiverse by clinical experts. While this offers insights into the unique ways in which I process information and interact with others, it does not excuse the impact my comments may have had on those around me. My blunt, insensitive, and strongly expre...

Continue Reading
07/27/2023
Coroutine 101 - A simple serializer

This is the first post in a series explaining C++20 coroutines by example. Goal The goal for this article is to create a simple non-recursive stream serializer, that can be used like this: stream::serializer serialize_ints(std::vector<int> data) { for (auto idx = 0u; idx < data.size(); idx++) { if (idx != 0) co_yield ','; co_yield std::to_string(data[idx]); } } int main(int argc, char *argv[]) { auto s = serialize_ints({1,2,3,4,5,6,7,8,9,10}); std::string ...

Continue Reading
05/09/2023
New Website

Hey, it’s Vinnie here again! I have some very exciting news to share with you. The renovated website for Boost that we’ve been working on for far too long is now going into its Public Beta phase! Feel free to poke around and kick the tires but keep in mind this is a piece of software and it is still under development. Some parts are missing, incomplete,or buggy. Without further ado: https://boost.revsys.dev This public beta will extend for at least 10 weeks as we finish the last remaining f...

Continue Reading
05/08/2023
The Future of Boost

Greetings! I’m Vinnie Falco, Boost library author, C++ enthusiast, and the founder of The C++ Alliance, a 501(c)(3) non-profit. While some of you are enjoying the C++Now conference this week, I’d like to share some background on our organization and some history, outline a vision and goals for C++ and Boost, and solicit your feedback and support. How It Started I took notice of the C++ Standards Committee (“WG21”) while I was writing Boost.Beast in 2016. Howard Hinnant, a co-workers at Ripp...

Continue Reading
01/02/2023
Asio 201 - timeouts, cancellation & custom tokens

Since asio added and beast implemented per-operation cancellation, the way timeouts can be implemented in asio code has changed significantly. In this article, we’ll go from simple timeouts to building our own timeout completion token helper. Cancellation A timeout is a defined interval after which a cancellation will be triggered, if an action didn’t complete by then. Timeouts can be a way of handling runtime errors, but one should generally be prudent about their usage. Indiscriminate a...

Continue Reading