February 2019

Overload 149 is now available

ACCU’s Overload journal of February 2019 is out. It contains the following C++ related articles.

Overload 149 is now available

From the journal:

Rip It Up and Start Again.
Some things can be resurrected, others cannot. Frances Buontempo wonders when we need to repent and start over.

5 Big Fat Reasons Why Mutexes Suck Big Time.
Mutable shared state in multithreaded code is often protected by mutexes. Sergey Ignatchenko reminds us that Re-Actors can avoid many of the problems.

A Small Universe.
Writing a programming language is a hot topic. Deák Ferenc shows us how he wrote a compiler for bytecode callable from C++.

QM Bites: Understand Windows Operating-System Identification Preprocessor Macros.
Quality matters and bite sized articles help. Matthew Wilson returns with a QM Bites.

A Thorough Introduction to Distributed Systems.
What is a distributed system, and why is it so complicated? Stanislav Kozlovski explains.

Don’t Use std::endl.
How do you add a new line in C++? Chris Sharpe suggests std::endl is a tiny utility that’s more trouble than it’s worth.

Trip report: Winter ISO C++ standards meeting (Kona) —Herb Sutter

From the just-concluded ISO C++ meeting:

Trip report: Winter ISO C++ standards meeting (Kona)

by Herb Sutter

From the article:

Per our official C++20 schedule, this was the last meeting to approve features for C++20...

So we now know most of the final feature set of C++20! At our next meeting in July, we expect to formally adopt a few additional features that were design-approved at this meeting but didn’t complete full wording specification review this week, and then at the end of the July meeting we will launch the primary international comment ballot (aka CD ballot) for C++20....

CopperSpice: Evolution of Graphics Technology

New video on the CopperSpice YouTube Channel:

Evolution of Graphics Technology

by Barbara Geller and Ansel Sermersheim

About the video:

In this video, we cover the complex history of modern graphics technoloy. We look at the various graphics standards and explain how some of the differences came about between OpenGL, Vulkan, Mantle and Metal.

Please take a look and remember to subscribe!

Cpp On Sea 2019 Trip Report—Arne Mertz

Were you there?

Cpp On Sea 2019 Trip Report

by Arne Mertz

From the article:

From February 3rd through February 6th I have been in Folkestone, UK, to visit the first C++ On Sea conference.

There must be something in the water on that island that enables them to organize fantastic conferences like ACCUConf and, since this year, C++ On Sea.
C++ On Sea is definitely the best conference I have ever been to, and here’s a little glimpse why I think so...

HPX V1.2.1 released—STE||AR Group

The STE||AR Group has released V1.2.1 of HPX -- A C++ Standard library for parallelism and concurrency.

HPX V1.2.1 Released

The newest version of HPX (V1.2.1) is now available for download! Please see here for the release notes. This release is a pure bug fix release that addresses a couple of compatibility problems (in particular with Boost V1.69). We have also included some important improvements that were merged since the previous release.

    HPX is a general purpose parallel C++ runtime system for applications of any scale. It implements all of the related facilities as defined by the C++ Standard. As of this writing, HPX provides the only widely available open-source implementation of the new C++17 parallel algorithms. Additionally, HPX implements functionalities proposed as part of the ongoing C++ standardization process, such as large parts of the C++ Concurrency TS, Parallelism TS V2, data-parallel algorithms, executors, and many more. It also extends the existing C++ Standard APIs to the distributed case (e.g. compute clusters) and for heterogeneous systems (e.g. GPUs).

    HPX seamlessly enables a new Asynchronous C++ Standard Programming Model that tends to improve the parallel efficiency of our applications and helps reducing complexities usually associated with parellism and concurrency.