Video & On-Demand

CopperSpice: Concepts in C++20

New video on the CopperSpice YouTube Channel:

Concepts in C++20

by Barbara Geller and Ansel Sermersheim

About the video:

In this video we look at the feature called Concepts which was added in C++20. We discuss some of the reasons concepts were added to the language, and why concepts as they were accepted are not like the original proposals they started with. We also provide an example of replacing SFINAE with concepts to produce cleaner and more readable code.

Please take a look and remember to subscribe!

CopperSpice: Qualifiers

New video on the CopperSpice YouTube Channel:

Qualifiers

by Barbara Geller and Ansel Sermersheim

About the video:

In this video we explore the many different kinds of qualifiers available in C++ and explore how they interact. We also cover why you would want to qualify your methods, and a surprising corner case in the way assignment is defined which can lead to very subtle bugs.

Please take a look and remember to subscribe!

CppCon 2019: A State of Compile Time Regular Expressions--Hana Dusíková

This year, CppCon 2020 is going virtual. The dates are still the same – September 14-18 – and we are aiming for the CppCon live event to have pretty much everything you’re familiar with at CppCon except moved online: multiple tracks including “back to basics” and a new “embedded” track; live speaker Q&A; live talk time zones friendly to Americas and EMEA (and we’re going to try to arrange around-the-clock recorded repeats in all time zones, where speakers who are available can be available for live Q&A in their repeated talks too, and we’ll do that if it’s possible – but we’re still working on it!); virtual tables where you can interact face-to-face online with other attendees just like at the physical event; virtual exhibitor spaces where you can meet the folks on your favorite product’s teams to ask them question face-to-face; pre- and post-conference classes; and even the CppCon house band playing live before every plenary session. All talk recordings will be freely available as usual on YouTube a month or two after the event, but everything else above will be available only live during CppCon week.

To whet your appetite for this year’s conference, here’s another of the top-rated talks from last year. Enjoy – and register today for CppCon 2020 – all the spirit and flavor of CppCon, this year all virtual and online!

A State of Compile Time Regular Expressions

by Hana Dusíková

Summary of the talk:

In this talk I will present an advancement on the Compile Time Regular Expression (CTRE) library. The library was designed with new C++20 features, and it uses novel techniques. This presentation independently sums up the work since my previous CppCon talk about the library.

The primary topic of this talk will be an explanation of the new Deterministic Finite Automaton (DFA) engine in the library and how it's built and optimised during compilation. I will explain the differences and limitations of the new engine in comparison to the previous Back Tracking engine. I will address these differences with a benchmark and I will discuss the generated assembly.

Even if you are not interested in regular expressions, you will learn new techniques in compile-time meta-programming and see new C++20 features in action.

CppCon 2019: This Videogame Programmer Used the STL and You Will Never Guess What...--Mathieu Ropert

This year, CppCon 2020 is going virtual. The dates are still the same – September 14-18 – and we are aiming for the CppCon live event to have pretty much everything you’re familiar with at CppCon except moved online: multiple tracks including “back to basics” and a new “embedded” track; live speaker Q&A; live talk time zones friendly to Americas and EMEA (and we’re going to try to arrange around-the-clock recorded repeats in all time zones, where speakers who are available can be available for live Q&A in their repeated talks too, and we’ll do that if it’s possible – but we’re still working on it!); virtual tables where you can interact face-to-face online with other attendees just like at the physical event; virtual exhibitor spaces where you can meet the folks on your favorite product’s teams to ask them question face-to-face; pre- and post-conference classes; and even the CppCon house band playing live before every plenary session. All talk recordings will be freely available as usual on YouTube a month or two after the event, but everything else above will be available only live during CppCon week.

To whet your appetite for this year’s conference, here’s another of the top-rated talks from last year. Enjoy – and register today for CppCon 2020 – all the spirit and flavor of CppCon, this year all virtual and online!

This Videogame Programmer Used the STL and You Will Never Guess What Happened Next

by Mathieu Ropert

Summary of the talk:

The STL is sometimes seen as a strange and dangerous beast, especially in the game development industry.
There is talk about performance concerns, strange behaviours, interminable compilations and weird decisions by a mysterious "committee".
Is there any truth to it? Is it all a misconception?

I have been using the STL in a production videogame that is mostly CPU bound and in this talk we will unveil the truth behind the rumours.
We will start by a discussion about the most common criticism against the STL and its idioms made by the gamedev community.
Then we will see a few practical examples through STL containers, explaining where they can do the job, where they might be lacking and what alternatives can be used.
Finally we will conclude with some ideas on how we can improve both the STL for game developers and also how to foster better discussion on the topic in the future.

At the end of this talk, attendees should have a solid understanding of why the STL is sometimes frowned upon, when it makes sense to look for alternatives to the standard and most importantly when it does not.

CppCon 2019: The Best Parts of C++--Jason Turner

This year, CppCon 2020 is going virtual. The dates are still the same – September 14-18 – and we are aiming for the CppCon live event to have pretty much everything you’re familiar with at CppCon except moved online: multiple tracks including “back to basics” and a new “embedded” track; live speaker Q&A; live talk time zones friendly to Americas and EMEA (and we’re going to try to arrange around-the-clock recorded repeats in all time zones, where speakers who are available can be available for live Q&A in their repeated talks too, and we’ll do that if it’s possible – but we’re still working on it!); virtual tables where you can interact face-to-face online with other attendees just like at the physical event; virtual exhibitor spaces where you can meet the folks on your favorite product’s teams to ask them question face-to-face; pre- and post-conference classes; and even the CppCon house band playing live before every plenary session. All talk recordings will be freely available as usual on YouTube a month or two after the event, but everything else above will be available only live during CppCon week.

To whet your appetite for this year’s conference, here’s another of the top-rated talks from last year. Enjoy – and register today for CppCon 2020 – all the spirit and flavor of CppCon, this year all virtual and online!

The Best Parts of C++

by Jason Turner

Summary of the talk:

C++ is a big language, and it gets bigger every year. Is C++ it too big? Do we just continue to make the language harder to learn? Or, perhaps, do these language additions actually make the language better and easier to use? We will take a pragmatic look at the changes brought to C++ over the years and what impact they have had on how we write code.

Cppcon: Instructor Interview: Mateusz Pusz / C++ Concepts

The future.

Instructor Interview: Mateusz Pusz / C++ Concepts

Summary of the video:

In this week’s instructor interview, Kevin Carpenter welcomes Mat Pusz for a discussion of his CppCon Academy class, C++ Concepts: Constraining C++ Templates in C++20 and Before. Mat quickly demonstrates the power and importance of constraining types when calling functions. His class will cover how to do this with the new concepts feature in C++20 and also how to do it if you are not yet using C++20.

CppCon 2019: Non-conforming C++: the Secrets the Committee Is Hiding From You--Miro Knejp

This year, CppCon 2020 is going virtual. The dates are still the same – September 14-18 – and we are aiming for the CppCon live event to have pretty much everything you’re familiar with at CppCon except moved online: multiple tracks including “back to basics” and a new “embedded” track; live speaker Q&A; live talk time zones friendly to Americas and EMEA (and we’re going to try to arrange around-the-clock recorded repeats in all time zones, where speakers who are available can be available for live Q&A in their repeated talks too, and we’ll do that if it’s possible – but we’re still working on it!); virtual tables where you can interact face-to-face online with other attendees just like at the physical event; virtual exhibitor spaces where you can meet the folks on your favorite product’s teams to ask them question face-to-face; pre- and post-conference classes; and even the CppCon house band playing live before every plenary session. All talk recordings will be freely available as usual on YouTube a month or two after the event, but everything else above will be available only live during CppCon week.

To whet your appetite for this year’s conference, here’s another of the top-rated talks from last year. Enjoy – and register today for CppCon 2020 – all the spirit and flavor of CppCon, this year all virtual and online!

Non-conforming C++: the Secrets the Committee Is Hiding From You

by Miro Knejp

Summary of the talk:

These days everyone talks about conforming and portable C++. Compiler vendors celebrate increasing conformance. Committee agents blind us with new shiny toys coming to the language. But there is a darker side to C++. A C++ you are not supposed to know about.

What if I told you there was more to C++ than what the agents of The Committee want us to believe? Over decades programmers all around the world have added features to the language in form of compiler extensions that let us do even greater things. Some are completely new, and some are lifted from C to C++ to allow some interesting, and sometimes more efficient, application.

We will see how statements can become expressions, how "goto" with extra superpowers can make your programs faster, and why there exists an operator named after a famous rock star. These are just a few examples of what to expect as listing any more would draw unwanted attention from The Committee. Unfortunately, because these extensions are not part of ISO C++, using any of them comes at the expense of portability. Or does it?