Making things do stuff – Part 1--Glennan Carnie

C++ for embedded too!

Making things do stuff – Part 1

by Glennan Carnie

From the article:

C has long been the language of choice for smaller, microcontroller-based embedded systems; particularly for close-to-the-metal hardware manipulation.

C++ was originally conceived with a bias towards systems programming; performance and efficiency being key design highlights.  Traditionally, many of the advancements in compiler technology, optimisation, etc., had centred around generating code for PC-like platforms (Linux, Windows, etc).  In the last few years C++ compiler support for microcontroller targets has advanced dramatically, to the point where Modern C++ is a increasingly attractive language for embedded systems development...

Boost Your Productivity with Modern C++ - Now with C++17 -- Peter Gottschling

Repeating the last years' popular course, again being held in English and German:

Boost Your Productivity with Modern C++ - Now with C++17

by Peter Gottschling

About the training:

The course is designed for software developers who aim for excellent software characterized by intuitive interfaces and maximal performance. Our goal for this 4-day course is that you can afterwards program perceivably more productively. That your programs are usable more flexibly and nonetheless explore the hardware as efficiently as possible. That your software becomes clearer and simpler and thus more readable and more maintainable. For this purpose, we intensively use features of C++11, C++14, and for the first time C++17.

The trainer Peter Gottschling is the author of the advanced C++14 book "Discovering Modern C++",the Matrix Template Library 4, co-author of the Boost Graph Library and other scientific libraries. He is vice-chair of DIN's programming language group and was (the last) head of the German delegation in the ISO committee for C++ standardization.

The complete course description including the list of topics is available here.

P0636R0: Changes between C++14 and C++17 DIS -- Thomas Köppe

[Thank you to Thomas for taking the time to research and compile a quite comprehensive list of what's new in C++17! -- Ed.]

A new WG21 paper is available. If you are not a committee member, please use the comments section below or the std-proposals forum for public discussion.

Document number: P0636R0

Date: 2017-04-02

Changes between C++14 and C++17 DIS

by Thomas Köppe

Excerpt:

This document enumerates all the major changes that have been applied to the C++ working draft since the publication of C++14, up to the publication of the C++17 DIS (N4660). Major changes are those that were added in the form of a dedicated paper, excluding those papers that are large issue resolutions. No issue resolutions from either CWG or LWG issues lists (“defect reports”) are included.

CppCast Episode 95: C++17 Kona Update with Patrice Roy

Episode 95 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Patrice Roy to discuss the state of C++17 after the recent ISO Standards meeting at Kona.

CppCast Episode 95: C++17 Kona Update with Patrice Roy

by Rob Irving and Jason Turner

About the interviewee:

Patrice Roy has been playing with C++, either professionally, for pleasure or (most of the time) both for over 20 years. After a few years doing R&D and working on military flight simulators, he moved on to academics and has been teaching computer science since 1998. Since 2005, he’s been involved more specifically in helping graduate students and professionals from the fields of real-time systems and game programming develop the skills they need to face today’s challenges. The rapid evolution of C++ in recent years has made his job even more enjoyable.

He’s been a participating member in the ISO C++ Standards Committee since late 2014 and has been involved with the ISO Programming Language Vulnerabilities since late 2015. He has five kids, and his wife ensures their house is home to a continuously changing number of cats, dogs and other animals.

Understanding Object Lifetime in C++ in Denver, April 20, 2017—Jason Turner

Join us for a 1 day course in Denver, CO, USA April 20, 2017

Understanding Object Lifetime in C++

by Jason Turner

About the training:

C++ has what very few other languages have: a well defined object life cycle. Understanding this key aspect of C++ is critical to writing clean, maintainable, and efficient C++.

Join us for an interactive one day workshop where we will describe the lifecycle of an object in C++ and work through increasingly complex examples. Come prepared for lots of group discussion. There will be something for C++ developers of all skill levels to learn.

You will leave the workshop with an increased knowledge of C++ that will help you to design better programs and libraries.

CLion 2017.1 released -- Anastasia Kazakova

Welcome CLion 2017.1, new version of the cross-platform C/C++ IDE from JetBrains!

CLion 2017.1 released

by Anastasia Kazakova

From the article:

With the 2017.1 update CLion has learned a lot about C++14 and C++17. It improves your debugging experience with a disassembly view and unit testing with support for the Catch framework. In addition, Windows users are welcome to check out the new experimental support for Microsoft Visual C++ compiler.

The highlighted new features are:

  • Extended support for C++14 (in brief, all except constexpr are there!)
  • First step towards C++17 support (nested namespaces!)
  • First step to modernizing your C++ code: make auto intention
  • Support for precompiled headers and headers included via -include compile option
  • Disassembly view in debugger (GDB)
  • Support for the Catch unit test framework
  • Experimental support for Microsoft Visual C++ compiler
  • Find in Path in popup
  • Enhanced Log viewer and branches popup
  • Swift plugin: SourceKit inspections and ability to generate type from usage

C++Chat[16] The Great Template Metaprogramming Library Debate

CppChat:

CppChat[16]: The Great Template Metaprogramming Library Debate

with Chiel Douwes, Edouard Alligand, Eric Niebler, Joel Falcou, Louis Dionne, Odin Holmes, and Jon Kalb.

From the chat:

This was a special episode focusing on the path forward for Boost, the Standard Committee, and the C++ community in the area of template metaprogramming.

Variadic CRTP -- Steve Dewhurst

Steve Dewhurst has published a new paper under his category Once Weakly:

Variadic CRTP

by Steve Dewhurst

From article:

One problem with [the] traditional application of CRTP is that it’s inflexible....  We can get [more] flexibility by specifying the CRTP capability as a template template parameter.