November 2019

C++20 span tutorial--Paul Silisteanu

All you need to know.

C++20 span tutorial

by Paul Silisteanu

From the article:

According to the latest C++20 draft, a span is a non-owning view over a contiguous sequence of objects. In other words, a std::span is, in essence, a pointer, length pair that gives the user a view into a contiguous sequence of elements. The elements of a span can be, for example, stored in one of the standard library sequential containers (like std::array, std::vector), in a built-in C-style array or in a memory buffer...

C++ 20: The Core Language--Rainer Grimm

Many changes for the better.

C++ 20: The Core Language

by Rainer Grimm

From the article:

My last post C++20: The Big Four started with an overview of concepts, ranges, coroutines, and modules. Of course, C++20 has more to offer. Today, let's continue my overview of the core language...

A Universal Async Abstraction for C++ -- Corentin Jabot

Executors - of which P0443R11 is one of the latest iterations - is poised to be the most fundamental library addition to C++23.

A Universal Async Abstraction for C++

By Corentin Jabot

From the article:

What is it about?

It is first and foremost a quest to find the most basic building blocks on top of which one could build asynchronous, concurrent and parallel code, whether it be on a small chip or a supercomputer with thousands of CPUs and GPUs.

This is not an easy task and has kept many experts and many companies busy for many years.