

CppCast
Timur Doumler & Phil Nash
Every two weeks, or so, we sit down with guests from the C++ community to discuss the latest news and what they have been up to. Find us at cppcast.com
Episodes
Mentioned books

Mar 15, 2019 • 36min
News Roundup
Rob and Jason catch up on some news at the end of a week of traveling.
News
Usability improvements in GCC 9
Triton is the world’s most murderous malware, and it’s spreading
Counting Bugs in Windows Calculator
Understanding C++ Modules: Part 1: Hello Modules, and Module Units
Modern CMake Examples
CMake 3.14.0 available for download
Introduction into Logging with Loguru
Little-known C++: function-try-block
Links
@robwirving
@lefticus
Sponsor
Backtrace
Announcing Visual Studio Extension - Integrated Crash Reporting in 5 Minutes
Hosts
@robwirving
@lefticus

Mar 7, 2019 • 54min
RxCpp and Executors
Rob and Jason are joined by Kirk Shoop to talk about the RxCpp library and the future of Executors in C++.
Kirk stumbled into an internship at Microsoft in the 90s that turned into contracting and eventually employment at Microsoft. At Microsoft Kirk sometimes pushed the compiler to its knees in the pursuit of libraries that prevent common errors. In 2013 Kirk joined Microsoft Open Technologies Inc to work on open source. Kirk began investing heavily in rxcpp in the belief that it is a better abstraction for async than the primitives commonly used. Now Kirk works at Facebook with Eric Niebler and Lewis Baker to build async range concepts and algorithms (with coroutines) into the c++ std library.
News
Kona: A trip report
Are C++ Modules DOA 2
C++ Breaking the Rules with Inline Variables and Functions
Kirk Shoop
@kirkshoop
Kirk Shoop's GitHub
Kirk Shoop's Blog
Links
RxCpp
ReactiveX
CppCon 2016: Kirk Shoop "Algorithm Design For Values Distributed In Time"
Sponsors
Backtrace
Announcing Visual Studio Extension - Integrated Crash Reporting in 5 Minutes
Hosts
@robwirving
@lefticus

Feb 28, 2019 • 58min
Kona Trip Report
Rob and Jason are joined by Peter Bindels to talk about features approved at the ISO C++ Kona meeting for C++20 including Modules, Coroutines and much more.
Peter Bindels is a C++ software engineer who prides himself on writing code that is easy to use, easy to work with and well-readable to anybody familiar with the language. Since the last time he's been on CppCast he presented at multiple conferences about build tooling and simple code. In combining both, he created the build tool Evoke from cpp-dependencies and other smaller projects, leading to a simple to use build system presented at CppCon 2018. Earlier this year he presented its companion 2D Graphics library for absolute called Pixel at CppOnSea. He's active in both standards development as well as helping out with various things at conferences.
News
2019-02 Kona ISO C++ Committee Trip Report
All Meeting C++ 2018 talks on youtube
Core C++ Speaker List
Peter Bindels
@dascandy42
Peter Bindels' GitHub
Links
CppCon 2018: Peter Bindels "Build Systems: a Simple Solution to a Complicated Problem"
C++Now 2018: Peter Bindels "A View to a View"
Concerns about module toolability
Sponsors
Download PVS-Studio
Technologies used in the PVS-Studio code analyzer for finding bugs and potential vulnerabilities
Hosts
@robwirving
@lefticus

Feb 21, 2019 • 54min
Analyzing Undefined Behavior
Rob and Jason are joined by John Regehr to talk about his job as a professor at the University of Utah teaching C++ courses and some of his research projects including souper and csmith.
John Regehr is a professor at the University of Utah where he's been on the faculty since 2003. He likes to work on compilers and software correctness, but used to work on real-time and embedded systems. When he has free time he likes to go hiking in the desert with his kids.
News
Five Awesome C++ Papers for Kona 2019 ISO Meeting
The future of Catch2
Some C++ on Sea videos already available
Between linear and binary search
John Regehr
@johnregehr
John Regehr's Personal Page
John Regehr's Blog
Links
Souper
Csmith
C-Reduce
C++Now 2018: John Regehr "Closing Keynote: Undefined Behavior and Compiler Optimizations"
Sponsors
Download PVS-Studio
Technologies used in the PVS-Studio code analyzer for finding bugs and potential vulnerabilities
Hosts
@robwirving
@lefticus

Feb 14, 2019 • 44min
Leaf and 'What is Programming?'
Rob and Jason are joined by Edaqa Mortoray to talk about his experience designing the Leaf language and writing it's compiler in C++, and his book 'What is Programming?'
Edaqa Mortoray grew up programming. From interface design to scientific simulations, including video games and development products, he's coded a bit of everything. He's got a successful programming blog and is the author of the book "What is Programming?"
News
Moving iterators in C++
C++ 3D Game Tutorial Series
Legacy Code Programmer's Toolbox
C++17 - The Complete Guide
C++17 in Detail
Edaqa Mortoray
@edaqa
Edaqa's Blog
Links
What is Programming?
Edaqa & Stephane (Podcast)
Leaf Programming Language
dev.to
Awesome Podcasts
Sponsors
Backtrace
Hosts
@robwirving
@lefticus

Jan 31, 2019 • 52min
libc++
Rob and Jason are joined by Eric Fiselier to talk about libc++ and his contributions to the library.
Eric is as Software Engineer at Google working on Abseil and other core libraries. He is also a maintainer of libc++ and active member of the standards committee. In addition to writing C++ libraries, Eric enjoys hacking on Clang. Most recently Eric has been interested in using tooling to make C++ code healthier.
News
C++ Productivity Improvements in VS 2019 Preview 2
Pre-Kona 2019 C++ Standards Mailing
Italian C++ Conference 2019 Call for sessions
Core C++ Early Bird Tickets End Tomorrow
Eric Fiselier
@Eric01
Eric Fiselier's GitHub
Links
libc++ documentation
constinit proposal
P1337 Aliasing the standard library as a means to save C++
C++Now Volunteer/Student Program
Sponsors
Backtrace
Hosts
@robwirving
@lefticus

Jan 24, 2019 • 47min
SG20
Rob and Jason are joined by Christopher Di Bella to talk about SG20, the C++ Education Study Group
Christopher is a Staff Software Engineer on the ComputeCpp Runtime for Codeplay Software and a co-founding member of SG20. He is passionate about teaching people how to write programs using idiomatic C++, and also advocates for developers to consider adopting algorithms and ranges. When not thinking about C++, Chris is often playing games, watching films, or trying something new.
News
I implemented a proposed C++ paper
Raytracing in 256 lines of bare C++
How McSema Handles C++ Exceptions
Core C++ 2019 in TLV: Tickets Available
Christopher Di Bella
@cjdb_ns
Christopher Di Bella's GitHub
Links
P1231: Proposal for Study Group: C++ Education
SG20 Education and Recommended Videos for Teaching C++
D1389R0 Standing Document for SG20: Guidelines for Teaching C++ to Beginners
CppCon 2018: Christopher Di Bella "How to Teach C++ and Influence a Generation"
Sponsors
Download PVS-Studio
Technologies used in the PVS-Studio code analyzer for finding bugs and potential vulnerabilities
Hosts
@robwirving
@lefticus

Jan 17, 2019 • 56min
Boost DI and SML
Rob and Jason are joined by Kris Jusiak to discuss [Boost].DI and [Boost].SML libraries.
Kris is a C++ Software Engineer who currently lives a couple of doors down from CppCon 2019. He has worked in different industries over the years including telecommunications, games and most recently finance for Quantlab Financial. He has an interest in modern C++ development with a focus on performance and quality. He is an open source enthusiast with multiple open source libraries where he uses template metaprogramming techniques to support the C++ rule - "Don't pay for what you don't use" whilst trying to be as declarative as possible with a help of domain-specific languages. Kris is also a keen advocate of extreme programming techniques, test/behaviour driven development and truly believes that 'the only way to go fast is to go well!'.
News
Meeting C++ 2018 Playlist
C++Now Submission Deadline Jan 23
If constexpr isn't broken
Kris Jusiak
@krisjusiak
Kris Jusiak's GitHub
Kris Jusiak's Website
Links
[Boost].DI
[Boost].SML
CppCon 2018: Kris Jusiak "State Machines Battlefield - Naive vs STL vs Boost"
CppCon 2018: Kris Jusiak "[Boost].DI - Inject all the things!"
C++Now 2016: Kris Jusiak: A C++14 Dependency Injection Library
Concepts driven design - Kris Jusiak - Meeting C++ 2017
Sponsors
Download PVS-Studio
Technologies used in the PVS-Studio code analyzer for finding bugs and potential vulnerabilities
Hosts
@robwirving
@lefticus

Jan 10, 2019 • 1h 1min
Trivially Relocatable
Rob and Jason are joined by Arthur O'Dwyer to discuss board games, his 3 ISO C++ papers and much more!
Arthur O'Dwyer started his career writing pre-C++11 compilers for Green Hills Software; he currently writes C++14 for Akamai Technologies. Arthur is the author of "Colossal Cave: The Board Game," "Mastering the C++17 STL" (the book), and "The STL From Scratch" (the training course). He is occasionally active on the C++ Standards Committee and has a blog mostly about C++.
News
Add an interactive command line to your applications
"Modern" C++ Ruminations
Initialization in C++ is Seriously Bonkers
cpp_feature_flags
Arthur O'Dwyer
@ColossalCaveTBG
Arthur O'Dwyer's Blog
Links
Adventure
Colossal Cave: The Board Game
CppCon 2018: Arthur O'Dwyer "Return Value Optimization: Harder Than It Looks"
C++Now 2018: Jason Turner "Initializer Lists Are Broken, Let's Fix Them"
CppCon 2018: Arthur O'Dwyer "An Allocator is a Handle to a Heap"
C++Now 2018: Arthur O'Dwyer "The Best Type Traits that C++ Doesn't Have"
CppCon 2018: Arthur O'Dwyer "Trivially Relocatable"
Trivially Relocatable on Compiler Explorer
P1154R0 Type traits for structural comparison
P1155R1 More implicit moves
P1144R1 Object relocation in terms of move plus destroy
Mastering the C++17 STL
Sponsors
Backtrace
Hosts
@robwirving
@lefticus

Jan 3, 2019 • 1h
ISO Papers and Merged Modules
Rob and Jason are joined by Isabella Muerte to discuss her experience presenting multiple papers at her first ISO meeting in San Diego and her thoughts on Merged Modules.
Isabella Muerte is a C++ Bruja, Build System Titan, and an open source advocate. She cares deeply about improving the workflow and debugging experience the C++ community currently has and is designing and implementing an experimental next-generation build system called Coven based on ideas mentioned in her CppCon 2017 talk "There Will Be Build Systems", while also simultaneously ripping CMake apart and putting it back together again with a library titled IXM. She recently launched aliasa.io, a small URL routing service intended for the CMake FetchContent module. She enjoys playing Destiny 2, acquiring tattoos, and is currently trying to master the five elements of earth, wind, water, fire, and gun (but she makes no promises). She bows to no entity but the terrifying Eldritch Daystar we call the "sun", and hopes to one day own two german shepherds named Rip and Tear.
News
Modern C++ Lamentations
C++ at the end of 2018
Getting you there - your C++ standardization efforts in 2019
Visual Studio Intellicode
Isabella Muerte
@slurpsmadrips
Isabella's Twitch
Isabella's GitHub
Isabella's Blog
Links
aliasa.io
P0468R1 An Intrusive Smart Pointer
P1272R0 Byteswapping for fun&&nuf
P1275R0 Desert Sessions: Improving hostile environment interactions
P1276R0 Void Main
P1279R0 std::breakpoint
P1280R0 Integer Width Literals
CppCon 2017: Isabella Muerte "There Will Be Build Systems: I Configure Your Milkshake"
Sponsors
Backtrace
Hosts
@robwirving
@lefticus