CppCon 2016: Walter E. Brown “What C++ Programmers Need to Know about Header <random>"

Play CppCon 2016: Walter E. Brown “What C++ Programmers Need to Know about Header <random>"
Sign in to queue


Published on Sep 30, 2016

Presentation Slides, PDFs, Source Code and other presenter materials are available at: https://github.com/cppcon/cppcon2016

The generation of pseudo-random numbers has been an important computing application ever since the pioneering work of John von Neumann and others during the World War II era. It remains an important application for gaming, statistical sampling, and simulation, to name but a few areas of its continuing utility.
Obtaining a random number (technically, a variate) is widely believed to be a simple task. Alas, it usually isn't, and programmers often have little or no training to help them make important decisions that can have subtle effects on the correctness and reliability of their programs' results.
In this talk by the principal author of the C++ -random- facility, we will describe the header's conceptual underpinnings, demonstrate its most common correct usage pattern, exhibit and explain what's wrong with its most common usage anti-pattern, and discuss the merits of a number of possible toolkits based on the header's facilities.

Walter E. Brown
With broad experience in industry, academia, consulting, and research, Dr. Walter E. Brown has been a C++ programmer for over thirty-five years, joining the C++ standards effort in 2000. Among numerous other contributions, he is responsible for introducing such now-standard C++ library features as cbegin/cend, common_type, gcd, and void_t, as well as headers < random > and < ratio >. He has also significantly impacted such core language features as alias templates, contextual conversions, variable templates, and static_assert. He conceived and served as project editor for the International Standard on Special Mathematical Functions in C++, now part of the forthcoming C++17.
When not playing with his grandchildren, Dr. Brown is an Emeritus participant in the C++ standards process, with several more core and library proposals under consideration.

Videos Filmed & Edited by Bash Films: http://www.BashFilms.com





Download this episode

The Discussion

Add Your 2 Cents