community

The first 5 companies have joined the employer listing at Meeting C++!

Since this year, Meeting C++ offers companies the option to be listed as a C++ employer:

The first 5 companies have joined the employer listing!

by Jens Weller

From the article:

Happy to report that now 5 companies are listed in the employer listing in the Meeting C++ job section!

These are:

    KDAB
    QuasarDB
    think-cell
    Tenzir
    Rieke Computersysteme

ISO C++ Committee – Rapperswil 2018 trip report--Timur Doumler

MAny things happened!

ISO C++ Committee – Rapperswil 2018 trip report

by Timur Doumler

From the article:

From the 4th to the 9th of June 2018, Phil Nash and I attended the ISO C++ Committee meeting in beautiful Rapperswil, Switzerland, representing JetBrains. We are continuing our active involvement in developing and standardising C++ (please read the last trip report for details)...

Overload 145 is now available

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

Overload 145 is now available

From the journal:

Automate all the things
Automation can speed things up. Frances Buontempo considers how it can make things worse. by Frances Buontempo

How to Write a Programming Language: Part 1, The Lexer
Writing a programming language might sound very difficult. Andy Balaam starts his series with a lexer. by Andy Balaam

Type-agnostic Tracing Using {fmt}
Tracing compound and custom types is a challenge. Mike Crowe demonstrates how {fmt} provides a safe alternative to printf. by Mike Crowe

A Short Overview of Object Oriented Software Design
Object oriented design has many principles. Stanislav Kozlovski demonstrates good design through a role playing game. by Stanislav Kozlovski

IO2D demo: Maps--Michael Kazakov

Rendering maps.

IO2D demo: Maps

by Michael Kazakov

From the article:

This blog post describes another IO2D demo I wrote as a showcase of the library’s capabilities. The demo is a simple yet working GIS renderer. The OpenStreetMap service is used as a raw data provider, allowing for the visualization of any reasonably sized rectangular region. The demo supports querying OSM servers directly or loading existing data files. The entire source code of the sample is less than 800 lines of code, of which 250 lines deal with the rendering itself and another 360 lines handle the data model.

CppCon 2017: ThinLTO: Scalable and Incremental Link-Time Optimization--Teresa Johnson

Have you registered for CppCon 2018 in September? Early bird registration is open now.

While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2017 for you to enjoy. Here is today’s feature:

ThinLTO: Scalable and Incremental Link-Time Optimization

by Teresa Johnson

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

Whole program optimization enables higher performance in C++ applications, because of the expanded scope for analysis and optimization. However, the memory and time required to optimize the entire program together as a single unit traditionally has made whole program optimization infeasible for complex and large C++ applications, such as those being built at Google. Additionally, traditional whole program optimization frameworks have not supported fast incremental builds. ThinLTO (Thin Link Time Optimization) is a new compilation model that was recently deployed in the LLVM compiler toolchain to enable scalable whole program optimization for these huge C++ applications, and additionally enables the fast incremental builds required for use in day-to-day development.

In this talk we’ll describe why whole program optimization is beneficial for C++ applications, how the ThinLTO compilation model enables scalable and incremental builds, and how ThinLTO can be integrated with distributed build systems for even faster whole program builds. Additionally, we’ll describe implications for C++ developers.

Triple trip report from ACCU, C++ Russia and C++Now 2018 – Part 1--Jonathan Boccara

Were you there?

Triple trip report from ACCU, C++ Russia and C++Now 2018 – Part 1

by Jonathan Boccara

From the article:

Going to conferences is a great experience, to learn about your domain and meet people that work in it. Going to conferences can give you tools to write better code.

I’ve had the chance to go to (and speak at) three conferences over a month:

  • ACCU in Bristol, UK at the beginning of April,
  • C++ Russia in Saint-Petersburg, Russia in mid April,
  • C++Now in Aspen, US at the beginning of May.

I haven’t seen many people attending all three of them, so I figured I could make a combined trip report, to give you an idea of what they’re like. And more importantly what you would get by attending either one.

And a huge thanks to the company I work for, Murex, for sending me all over the world of C++!

CppCon 2017: The Nightmare of Move Semantics for Trivial Classes--Nicolai Josuttis

Have you registered for CppCon 2018 in September? Early bird registration is open now.

While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2017 for you to enjoy. Here is today’s feature:

The Nightmare of Move Semantics for Trivial Classes

by Nicolai Josuttis

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

Assume, we implement a very simple class having just multiple string members. Even ordinary application programmer prefer to make it simple and fast.

You think you know how to do it? Well beware! It can become a lot harder than you initially might assume.

So, let’s look at a trivial class with multiple string members and use live coding to see the effect using different implementation approaches (using constructors passing by value, by reference, by perfect forwarding, or doing more sophisticated tricks).

Sooner than later we will fall into the deep darkness of universal/forwarding references, enable_if, type traits, and concepts.