community

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.

CppCon 2017: EA’s Secret Weapon: Packages and Modules--Scott Wardle

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:

EA’s Secret Weapon: Packages and Modules

by Scott Wardle

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

A lot of people hate build systems. What if using a library was just as easy as header-only libraries?

EA has had a Secret Weapon called “packages” for over 14 years. EA's Packages are like Ruby’s Gems or Perl’s CPAN or Rust’s cargo. If you build a package from the package server it will download all of its dependencies.

This talk will be about what we have learned about packages and versioning while building our large AAA games over the last 10+ years. Finally, what do we see for the future, like how will C++ modules fit in?

In detail I will talk about:
-Package layout
-Package server
-Versioning control and packages
-Libraries teams and platform fragmentation
-Packages' effect on large scale architecture
-C++ Modules TS prototypes

Start speaking at Meeting C++ 2018

As it was a big success last year, Meeting C++ has again a track for new speakers, and is looking for folks which like to submit their talk ideas to the conference!

The call for Talks for Meeting C++ 2018 ends on June 17th.

Call for a more diverse program at Meeting C++ 2018!

by Jens Weller

From the article:

Last years track for new speakers was a great success, so Meeting C++ will dedicate a track to this now in every year. So I'd like to reach out to the C++ Community, who do you think has something interesting to say about C++ and could start speaking at this years Meeting C++?

C++ User Group Meetings in June

Lots of User Groups are meeting in June, Meeting C++ has posted an detailed overview:

C++ User Group Meetings in June 2018

by Jens Weller

From the article:

The monthly overview of upcoming C++ User Group meetings. Join a C++ User Group near you, or learn how to start your own!

There are 4 new C++ User Groups: Houston, Prague, Cluj, New York.

 

Hello CMake!--Arne Mertz

Do you use it?

Hello CMake!

by Arne Mertz

From the article:

Since I have mentioned CMake in a handful of past blog posts, it is time to give a short introduction for those that don’t know it yet.

CMake is one of the most popular build systems for C++ out there. One of the main reasons probably is that it is cross-platform: It does not build the project itself but operates a platform-specific system. That means it can generate Makefiles, ninja-build files, or project files for Visual Studio or Xcode, to name just a few...

Default-constructibility is overrated--Arthur O’Dwyer

What do you think?

Default-constructibility is overrated

by Arthur O’Dwyer

From the article:

The Ranges Technical Specification includes very many concept definitions (based on the Concepts TS), including for example Integral and Predicate. It also provides a concept named Regular which implements a variation on the “Regular” concept described by Alexander Stepanov in his paper '’Fundamentals of Generic Programming’’ (1998)...