2016 Talks

Please enjoy all available videos and slides from talks, keynotes, and tutorials given at C++Now 2016, which took place in Aspen Colorado from May 9th to May 14th, 2016.

Keynote: Better Code

by Sean Parent
given May 10, 2016 at 9:00AM - 10:30AM in Paepcke Auditorium

C++14 Dependency Injection Library with no overhead and compile time guarantee of object creation

by Kris Jusiak
given May 10, 2016 at 11:00AM - 12:30PM in Flug Auditorium

Flowz: Towards an EDSL for Digital Signal Processing

by André Bergner
given May 10, 2016 at 11:00AM - 12:30PM in Bethe Hall

Typegrind: Type Preserving Heap Profiler for C++

by Zsolt Parragi and Zoltán Porkoláb
given May 10, 2016 at 11:00AM - 12:30PM in Booz-Allen Hamilton Room

CopperSpice: The Next Generation of Signals

by Barbara Geller and Ansel Sermersheim
given May 10, 2016 at 2:00PM - 3:30PM in Booz-Allen Hamilton Room

Proper Inheritance (part 1 of 2)

by John Lakos
given May 10, 2016 at 2:00PM - 3:30PM in Bethe Hall

Practical Performance Practices

by Jason Turner
given May 10, 2016 at 2:00PM - 3:30PM in Flug Auditorium

Metaprogramming for Dummies

by Louis Dionne
given May 10, 2016 at 4:00PM - 5:30PM in Booz-Allen Hamilton Room

Monoids, Monads, and Applicative Functors: Repeated Software Patterns

by David Sankel
given May 10, 2016 at 4:00PM - 5:30PM in Flug Auditorium

Proper Inheritance (part 2 of 2)

by John Lakos
given May 10, 2016 at 4:00PM - 5:30PM in Bethe Hall

C++14 version of Boost.MSM-eUML which compiles up to 60x faster whilst being slightly faster too!

by Kris Jusiak
given May 11, 2016 at 9:00AM - 10:30AM in Bethe Hall

Diet for your Templates - Reducing Code Bloat in Your Templated Library

by Sebastian Redl
given May 11, 2016 at 9:00AM - 10:30AM in Booz-Allen Hamilton Room

Variants: Past, Present, and Future

by David Sankel
given May 11, 2016 at 9:00AM - 10:30AM in Flug Auditorium

array_ref: Multidimensional Array References for the C++ Standard Library

by H. Carter Edwards and Bryce Lelbach
given May 11, 2016 at 11:00AM - 12:30PM in Flug Auditorium

Documenting C++ Using the Right Tools

by Barbara Geller and Ansel Sermersheim
given May 11, 2016 at 11:00AM - 12:30PM in Booz-Allen Hamilton Room

Come Stream With Me: Build Performant, Simple, Parallel Applications in C++ Using RaftLib

by Jonathan Beard
given May 11, 2016 at 11:00AM - 12:30PM in Bethe Hall

Metaprogramming for the Brave

by Louis Dionne
given May 11, 2016 at 2:30PM - 4:00PM in Flug Auditorium

Pulling Visitors

by Nat Goodspeed and Daniel J H
given May 11, 2016 at 2:30PM - 4:00PM in Bethe Hall

Thread-safe Observer Pattern: You're Doing It Wrong

by Tony Van Eerd
given May 11, 2016 at 2:30PM - 4:00PM in Booz-Allen Hamilton Room

Friendship in Service of Testing

by Gábor Márton and Zoltán Porkoláb
given May 11, 2016 at 4:30PM - 5:15PM in Flug Auditorium

Implementation of a Multithreaded Compile-Time ECS in C++14

by Vittorio Romeo
given May 11, 2016 at 4:30PM - 6:00PM in Bethe Hall

Implementing a Lock-Free atomic_shared_ptr

by Michael McCarty
given May 11, 2016 at 4:30PM - 6:00PM in Booz-Allen Hamilton Room

Design Patterns in the 21st Century

by Dmitri Nesteruk
given May 11, 2016 at 5:15PM - 6:00PM in Flug Auditorium

Multithreading is the Answer. What was the Question? (part 1 of 2)

by Ansel Sermersheim
given May 12, 2016 at 9:00AM - 10:30AM in Booz-Allen Hamilton Room

Variadic Expansion in Examples

by Michał Dominiak
given May 12, 2016 at 9:00AM - 10:30AM in Flug Auditorium

Let's Make a Web Match-3 Game in C++14 using Dependency Injection(experimental Boost.DI), Meta State Machine(experimental Boost.MSM-lite) RangeV3 and MSVC and Emscripten

by Kris Jusiak
given May 12, 2016 at 9:00AM - 10:30AM in Bethe Hall

IoC++ - A IoC Framework for C++

by Sebastian Redl
given May 12, 2016 at 11:00AM - 12:30PM in Bethe Hall

Multithreading is the Answer. What was the Question? (part 2 of 2)

by Ansel Sermersheim
given May 12, 2016 at 11:00AM - 12:30PM in Booz-Allen Hamilton Room

Implementing `static` Control Flow in C++14

by Vittorio Romeo
given May 12, 2016 at 11:00AM - 12:30PM in Flug Auditorium

Exceptional Performance

by David Stone
given May 12, 2016 at 2:30PM - 4:00PM in Flug Auditorium

Implementing A Modern C++ MQTT Client for Embedded Devices

by Michael Caisse
given May 12, 2016 at 4:30PM - 5:15PM in Booz-Allen Hamilton Room

C++ Tool Support: Where We Are and Where We Are Heading

by Dmitri Nesteruk
given May 12, 2016 at 4:30PM - 5:15PM in Flug Auditorium

The Effective Structured Data Marshalling/Demarshalling Through Boost.Fusion Introspection In A High Performance Web Service

by Sergei Khandrikov and Piotr Reznikov
given May 12, 2016 at 4:30PM - 5:15PM in Bethe Hall

Preprocessor-Aware Automated Refactoring

by Jeff Trull
given May 12, 2016 at 4:30PM - 5:15PM in Booz-Allen Hamilton Room

Extending C++ with Co-Array Semantics

by Antoine TRAN TAN
given May 12, 2016 at 5:15PM - 6:00PM in Bethe Hall

Progress on Contract Support for C++17

by Nathan Myers
given May 12, 2016 at 5:15PM - 6:00PM in Booz-Allen Hamilton Room

Why and How To Add Scripting

by Jason Turner
given May 12, 2016 at 5:15PM - 6:00PM in Flug Auditorium

C++ Performance in Practice: Align, Vectorise, Cache, Jump!

by Timur Doumler
given May 13, 2016 at 9:00AM - 10:30AM in Booz-Allen Hamilton Room

Goodbye Metaprogramming, and Hello Functional: Living in a Post-Metaprogramming Era in C++

by Paul Fultz II
given May 13, 2016 at 9:00AM - 10:30AM in Flug Auditorium

The Design of a New C++ Build Toolchain

by Boris Kolpackov
given May 13, 2016 at 9:00AM - 10:30AM in Bethe Hall

An Interesting Lock-free Queue - Part 2 of N

by Tony Van Eerd
given May 13, 2016 at 11:00AM - 12:30PM in Flug Auditorium

Simple Hand Written Parsers

by Michał Dominiak
given May 13, 2016 at 11:00AM - 12:30PM in Booz-Allen Hamilton Room

Understanding Boost.Build

by Steven Watanabe
given May 13, 2016 at 11:00AM - 12:30PM in Bethe Hall

HPX and GPU Parallelized STL

by Marcin Copik
given May 13, 2016 at 2:30PM - 4:00PM in Bethe Hall

Implementing tuple in C++17

by Alisdair Meredith
given May 13, 2016 at 2:30PM - 4:00PM in Flug Auditorium

The Fiber Library

by Nat Goodspeed
given May 13, 2016 at 2:30PM - 4:00PM in Booz-Allen Hamilton Room

No Sane Compiler Would Optimize Atomics

by JF Bastien
given May 13, 2016 at 4:30PM - 6:00PM in Flug Auditorium

The CPU Cache: Instruction Re-Ordering Made Obvious

by Charles Bay
given May 13, 2016 at 4:30PM - 6:00PM in Booz-Allen Hamilton Room

What is the Basic Interface?

by Lisa Lippincott
given May 13, 2016 at 4:30PM - 6:00PM in Bethe Hall