This video is concerned with the multi-threaded and multi-process architecture of the software. It focuses on one of its components: immutable objects. It talks about how we ended up sticking to immutable objects, how they helped (and sometimes hindered) our development…
Exceptions are the native C++ error propagation mechanism. Exceptions, if used correctly, allow us to write a simpler, more readable, and more robust code. However, the path an be tricky and, unfortunately, the exception mechanism is not without flaws. The video sheds some…
Learn C++ With The Networking TS from Scratch: I/O Objects by Robert Leahy (CPPCon 2020) Video
May 31, 2021
Networking TS Facilities provide a framework within which testable, extensible, asynchronous programs can be written in C++. In addition to this, the Networking TS sets out specific “I/O object” types that provide means of performing I/O and thus enable the authoring of such programs to take place immediately. These provided I/O objects will invariably not be sufficient. The talk will…
Learn C++ With Managram: A Fully Asynchronous OS Based on Modern C++ by Alexander van der Grinten (CPPCon 2020) Video
May 30, 2021
In this talk, we present Managram, an OS designed around C++20 coroutines and the upcoming C++ sender/receiver model. Its main goal is to fully support asynchronous I/O across the entire system. At the end of the videos, it discusses the open challenges for system…
Learn C++ With Surprising Costs of void() (and Other Not-Quite-Innocuous Evils) by Patrice Roy (CPPCon 2020) Video
May 20, 2021
There are some things that could happen to us without us noticing them as evil or, as they have come to be known, Bad Code Smells. In some cases, many of these little things are acceptable, and thus go unnoticed in some of the code reviews. The idea for this talk came up…
Learn C++ With Monoids, Monads, and Applicative Functors: Repeated Software Patterns (CPPCon 2020) Video
May 6, 2021
This video explores the abstract mathematical structures that are commonly used in software development. It becomes easy to identify fundamental operations for specific classes of domains and how to put them together once the mind is trained to recognize these patterns. This…
Learn C++ With The Shapes of Multi-Dimensional Arrays by Vincent Reverdy (CPPCon 2020) Video
May 2, 2021
This video will be concentrating on one of the many issues involved: How to manage the shapes and dimensions of high-performance multidimensional arrays. In order to prevent metaprogramming wizards from having a full unusable response, we will add one requirement: it must be succinct, expressive, and humanly understandable. This video will also be discussing why bringing generic Non-Type Template…