filmov
tv
CppCon 2016: Ben Deane 'std::accumulate: Exploring an Algorithmic Empire'
![preview_player](https://i.ytimg.com/vi/B6twozNPUoA/maxresdefault.jpg)
Показать описание
—
—
What is the most powerful algorithm in the STL? In the world? There are many cases to be made. But this talk explores what I think is a pretty good candidate, which C++ calls std::accumulate(). Tucked away in <numeric>, perhaps relatively unregarded when compared with workhorses like std::find_if() and std::partition(); nevertheless, std::accumulate() is in some sense the ur-algorithm on sequences.
Let’s explore the result of looking at code through an accumulate-shaped lens, how tweaking the algorithm for better composability can unlock many more uses, and how it can be further genericized with applications to parallelism, tree structures, and heterogeneous sequences.
std::accumulate(): it’s not just for adding things up!
—
Ben Deane
Principal Software Engineer, Blizzard Entertainment
—
*-----*
*-----*
—
What is the most powerful algorithm in the STL? In the world? There are many cases to be made. But this talk explores what I think is a pretty good candidate, which C++ calls std::accumulate(). Tucked away in <numeric>, perhaps relatively unregarded when compared with workhorses like std::find_if() and std::partition(); nevertheless, std::accumulate() is in some sense the ur-algorithm on sequences.
Let’s explore the result of looking at code through an accumulate-shaped lens, how tweaking the algorithm for better composability can unlock many more uses, and how it can be further genericized with applications to parallelism, tree structures, and heterogeneous sequences.
std::accumulate(): it’s not just for adding things up!
—
Ben Deane
Principal Software Engineer, Blizzard Entertainment
—
*-----*
*-----*
CppCon 2016: Ben Deane 'std::accumulate: Exploring an Algorithmic Empire'
CppCon 2016: Ben Deane “Using Types Effectively'
CppCon 2016: Ben Deane “A Static Alternative to Virtual Functions, Using Expression SFINAE'
How We Used To Be - Ben Deane - CppCon 2020
CppCon 2018: Ben Deane “Easy to Use, Hard to Misuse: Declarative Style in C++”
Lightning Talk: The Process Is The Problem - Ben Deane - CppCon 2021
CppCon 2018: Ben Deane “Operator Overloading: History, Principles and Practice”
CppCon 2019: Ben Deane “Everyday Efficiency: In-Place Construction (Back to Basics?)”
CppCon 2017: Ben Deane & Jason Turner “constexpr ALL the Things!”
CppCon 2017: Ben Deane “std:: exchange Idioms”
When Paradigms Collide - Ben Deane [CppNow 2021]
Composable C++: Principles and Patterns - Ben Deane - CppCon 2021
C++Now 2019: Ben Deane “Identifying Monoids: Exploiting Compositional Structure in Code”
CppCon 2015: Ben Deane “Testing Battle.net (before deploying to millions of players)'
Constructing Generic Algorithms: Principles and Practice - Ben Deane - CppCon 2020
C++20 Lambdas: Familiar Template Syntax - Ben Deane - CppCon 2020
CppCon 2016: Hartmut Kaiser “Parallelism in Modern C++'
CppCon 2016: Jackie Kay “Lessons Learned From An Embedded RTPS in Modern C++'
CppCon 2016: Tommy Bennett “Algorithm Mnemonics: Increase your Productivity with STL Algorithms&apos...
STL Algorithms 14: std::accumulate & std::reduce
CppCon 2016: Matthew Bentley “Colonies, performance and why you should care'
C++Now 2018: Ben Deane “Easy to Use, Hard to Misuse: Declarative Style in C++”
CppCon 2016: Andy Bond “AAAARGH!? Adopting Almost Always Auto Reinforces Good Habits!?'
Calendrical C++: std::chrono, History, Mathematics and the Computus - Ben Deane - CppNow 2023
Комментарии