Video & On-Demand

CppCon 2015 C++: How I learned to stop worrying and love metaprogramming—Edouard Alligand

Have you registered for CppCon 2016 in September? Don’t delay – Registration is open now.

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

C++: How I learned to stop worrying and love metaprogramming

by Edouard Alligand

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

Horrible software engineering technique conceived in the forge of Hell or the Only True Way of doing C++ in 2015, template metaprogramming and its cohort of companion techniques are sure to create animation in a group of programmers.

What if we were to tell you that an actual software product, actually sold to real customers and in production for now several years has been built on it? What if we were to tell you that a lot of advanced template techniques helped us to build a better software faster?

This talk is all about real life examples of template metaprogramming, why they are useful and when and how you could use them in your own projects.

CppCon 2015 Parallelizing the C++ Standard Template Library—Grant Mercer & Danial Bourgeois

Have you registered for CppCon 2016 in September? Don’t delay – Registration is open now.

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

Parallelizing the C++ Standard Template Library

by Grant Mercer & Danial Bourgeois

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

As the era of frequency scaling comes to an end, multi-core parallelism has become an essential focal point in computational research. Mainstream languages, however, have not yet adapted to take full advantage of parallelism provided by the hardware. While new languages such as Rust and Swift are catching on and implementing multi-core algorithms in their libraries, C++ has only started to do so. A parallel Standard Library could bring with it many positive features that users can begin taking advantage of.

This talk will focus around two standards proposals, N4409 and N4406. N4409 outlines the details of a parallel Standard Library and features of these new parallel algorithms. The complementary N4406 outlines abstractions to take advantage of various mechanisms for parallel execution. We will cover the reasons why the new Standard Library would be beneficial to C++ users and our experience implementing these algorithms in HPX. The presentation will address what exactly the two proposals define, the challenges we faced, and the results we collected. In addition, we will discuss extensions made to these proposals and the C++11/14 standard in HPX to support these semantics in a distributed environment.

Enum Bitfields: A Gentle Introduction to SFINAE

Jon Kalb's talk at the New York C++ Developer meetup based on Anthony Williams' article in Overload is now online:

Using enum structs as bitfields (slides)

by Jon Kalb

From the description:

Jon Kalb gave a talk on Enum Bitfields at the New York C++ Developers group 2016-07-12. The talk was based on an article by Anthony Williams that is a gentle introduction to SFINAE. It includes a few nice library development pointers.

 

 

CppCast Episode 64: Modules with Gabriel Dos Reis

Episode 64 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Gabriel Dos Reis, Principal Software Engineer at Microsoft to discuss C++ Modules.

CppCast Episode 64: Modules with Gabriel Dos Reis

by Rob Irving and Jason Turner

About the interviewee:

Gabriel Dos Reis is a Principal Software Development Engineer at Microsoft. He is also a researcher and a longtime member of the C++ community. His research interests include programming tools for dependable software. Prior to joining Microsoft, he was Assistant Professor at Texas A&M University. Dr. Dos Reis was a recipient of the 2012 National Science Foundation CAREER award for his research in compilers for dependable computational mathematics and educational activities.

CppChat - Slashing on C++—Jon Kalb

The first video of CppChat is here:

CppChat - Slashing on C++

by Jon Kalb

From the description:

A live conversation about the latest in the C++ world. This week we'll be talking about Oulu, C++17, CppCon, and the latest conversations on C++.

We'll be featuring Bryce Adelstein Lelbach, Michael Caisse, and Jon Kalb. Bryce will be overflowing about his trip to Oulu, Jon will be overflowing about CppCon, and Michael will keep us on track.

This is our first time so it is likely to be very rough. But you'll join us for the content, not the polish.

CppCon 2015 Integrating generators EDSL’s for Spirit X3 (WIP)—Feliple Magno de Almeida

Have you registered for CppCon 2016 in September? Don’t delay – Registration is open now.

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

Integrating generators EDSL's for Spirit X3 (WIP)

by Feliple Magno de Almeida

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

Based on the presentation I made on C++Now 2015 for Developing EDSL's for Boost.Spirit V2, present the development of generators for Boost.Spirit X3 (next version of boost spirit) and how that can be used for higher abstraction EDSL's while, through template metaprogramming, create parsers and generators automatically from the same grammar, using CORBA format as an example, while dealing with endianness, alignment and asymmetric grammars. This work is based on the library mORBid (https://github.com/expertisesolutions...) and (https://github.com/expertisesolutions...).

CppCon 2015 Large Scale C++ with Modules: What You Should Know—Gabriel Dos Reis

Have you registered for CppCon 2016 in September? Don’t delay – Registration is open now.

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

Large Scale C++ with Modules: What You Should Know

by Gabriel Dos Reis

(watch on YouTube) (watch on Channel 9)

Summary of the talk:

“Modules” are a frequently requested and long-awaited feature by C++ programmers. In a nutshell, the idea is to have a direct language support for (a) expressing the boundaries and dependencies of a program component; (b) isolating source codes from macro vagaries; (c) scaling compile time, especially for large projects, given the ubiquity of “headers-only” template libraries; (d) spur innovation and deployment of semantics-aware developer tools.

This presentation will focus on three major points: (1) the design of the module proposal currently being considered by the C++ standards committee (design goals, properties, constraints); (2) implementations currently under way; and (3) early user experience and migration.

Modules directly address a problem (scalability) listed as one of the three major areas where C++17 is expected to significantly improve daily experience of the working C++ programmer. Naturally, this feature is also on the top ten list of C++17 functionalities Bjarne Stroustrup put forward in his “Thought on C++17.”