Meeting 26 April 2018

ACCU Conf 2018 (2018-04-10–2018-04-14) Trip Reports

C++17 - The Best Features - Nicolai Josuttis (ACCU 2018)


VCPkg, now for Linux and macOS


code::dive 2017 – John Lakos – Value semantics: It ain’t about the syntax!

Reddit: Why is modern C++ seemingly not being taught?

Reddit: Why is C++ so hated?

C++ in Zircon (Fuchsia OS kernel)

Brigand – Instant compile time C++11 metaprogramming library

Everything you were doing with Boost.MPL can be done with Brigand.

  • Example tasks:
    • Create a tuple from a list of types and then transform it into a variant
    • Look for the presence of a type in a tuple and get its index
    • Sort a list of types
    • Advanced static assertion with arithmetics and complex functions
    • Go through a list of types and perform a runtime action for each type

Raspberry Pi - Install Clang 6 and compile C++17 programs

FoundationDB and Flow by Apple

Flow, a new programming language that brings actor-based concurrency to C++11. Flow is implemented as a compiler which analyzes an asynchronous function (actor) and rewrites it as an object with many different sub-functions that use callbacks to avoid blocking. The Flow compiler’s output is normal C++11 code, which is then compiled to a binary using traditional tools. Flow also provides input to our simulation tool, which conducts deterministic simulations of the entire system, including its physical interfaces and failure modes. In short, Flow allows efficient concurrency within C++ in a maintainable and extensible manner.

C++ Patterns