Slides of the 9th of January 2018 BeCPP Meeting—Marc Gregoire

BeCPP_Logo_282x64.pngOn January 9th 2018, the Belgian C++ Users Group had their next event sponsored by Barco.

Slides of the 9th of January 2018 BeCPP Meeting

About the event:

This was our users group biggest event ever. We had around 140 attendees!
Here are the presentations:

  • "Threads are evil" (Frederik Vannoote)
  • "Legacy code refactoring case" (Roeland Van Lembergen)
  • "Boost.Asio C++ (Network) Programming" (Lieven de ####)

If you couldn’t attend the event in person, or if you would like to go over the material again, you can download them from the BeCPP website.

Chaining Comparisons: Seeking Information from the Audience—Barry Revzin

A nice example of committee members reaching out to the community for data/input on proposed changes that could have a breaking impact.

Chaining Comparisons: Seeking Information from the Audience

by Barry Revzin

From the article:

At the last standards committee meeting in Albuquerque, the spaceship operator was adopted into the working draft for what will eventually be C++20. I’m already pretty excited about that. But one of the initial “optional” parts of Herb Sutter’s original spaceship proposal (which was dropped early) was to support chaining comparisons...

Report from using std::cpp 2017—Daniel Garcia

Last November, 30th we had the 5th edition of using std::cpp (the annual C++ conference in Spain). Around 200 people gathered for a one-day event of C++ talks.

Using std::cpp 2017 Conference Report

by Daniel Garcia

From the report:

We used the evaluation forms to survey what people is using in their daily job. And we got some pleasent surprises about new standards adoption. It seems C++98/03 usage is going down!


Boost 1.66 is out!

New version of boost!

Boost 1.66 is out!

From the article:

New Libraries

  • Beast: Portable HTTP, WebSocket, and network operations using only C++11 and Boost.Asio, from Vinnie Falco.
  • CallableTraits: A spiritual successor to Boost.FunctionTypes, Boost.CallableTraits is a header-only C++11 library for the compile-time inspection and manipulation of all 'callable' types. Additional support for C++17 features, from Barrett Adair.
  • Mp11: A C++11 metaprogramming library, from Peter Dimov.


Clang 5 in a Docker container for C++17 development—SolarianProgrammer

Very convenient to create a development environment without hassles.

Clang 5 in a Docker container for C++17 development

by SolarianProgrammer

From the article:

If you want to try the new C++17, using Clang in a Docker container, you are in the right place. Running Clang in a container has the advantage that it is light on resources and won’t mess with your underlying OS. The last point is especially important if your host operating system is macOS, on which it is a really bad idea to directly install a binary Clang other than the one that comes with Xcode. I’ve tested the approach presented in this article on Windows 10, macOS High Sierra and Ubuntu Linux.

Overload 142 is now available

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

Overload 142 is now available

From the journal:

Too Fast! Too slow! Too right!!
Many products over-promise. Frances Buontempo muses on how to get things just right. by Frances Buontempo

CAS (Re)Actor for Non-Blocking Multithreaded Primitives
Lock free programming can be difficult. Sergey Ignatchenko shows how copy and swap can work for reactors. by Sergey Ignatchenko

A Design Example
Design issues cause problems. Charles Tolman considers an organising principle to get to the heart of the matter. by Charles Tolman

The Last Word in Patterns
What can you do in a single transaction in a database? Paul Grenyer writes us his Single CrUD pattern. by Paul Grenyer

Implementing Type-Classes as OCaml Modules
Type classes achieve overloading in functional paradigms. Shayne Fletcher implements some as OCaml modules. by Shayne Fletcher

Evolutionary Computing Frameworks for Optimisation
Evolutionary algorithms can find optimal solutions to problems. Aurora Ramírez and Chris Simons give us an overview. by Aurora Ramírez and Chris Simons

C++17 Feature Removals And Deprecations—Stephan T. Lavavej

This is about visual studio, but this is also about how the deprecated mechanisms work.

C++17 Feature Removals And Deprecations

by Stephan T. Lavavej

From the article:

Technology advances by inventing new ways of doing things and by discarding old ways. The C++ Standardization Committee is simultaneously adding new features and removing old features at a gradual pace, because we’ve discovered thoroughly better ways of writing code. While feature removals can be annoying, in the sense that programmers need to go change old codebases in order to make them conform to new Standards, they’re also important. Feature removals simplify the Core Language and Standard Library, avoiding the doom of accreting complexity forever. Additionally, removing old features makes it easier to read and write code. C++ will always be a language that offers programmers many ways to write something, but by taking away inferior techniques, it’s easier to choose one of the remaining techniques which are more modern...