www.cppnow.org
/ cppnow
---
Adapting C++20 Ranges Algorithms for Most Metaprogramming Needs in Fewer Than 1,000 Lines of Code - Daisy Hollman, Kris Jusiak - CppNow 2023
Slides: github.com/boo...
---
Many software engineering challenges fundamentally boil down to a choice between code generation, code duplication, or metaprogramming. There will always be trade-offs in these sorts of problem spaces, with the accessibility and ergonomics often cited as the downsides of metaprogramming. In this talk, we will explore the use of metaprogramming in C++20 to address some common problems in software engineering. We will show how new features in C++20 can be used to increase the accessibility of metaprogramming, making it more viable as a solution for expressing repetitive or redundant information in code. By reusing familiar abstractions in unfamiliar contexts,we can reduce the cognitive load associated with reading and maintaining software that leverages metaprogramming. Isolation and abstraction are crucial in building scalable systems, and in this talk, we will introduce a single-header, <1,000 line solution that adapts most of the C++20 ranges algorithms to radically simplify metaprogramming. We will walk through the most challenging parts of this implementation and discuss practical use cases for these techniques. Join us as we delve into the world of C++20 ranges and discover how they can enhance our software engineering toolkit in unexpected ways.
---
Daisy Hollman
Dr. Daisy S. Hollman began working with the C++ standards committee in 2016, where she has made contributions to a wide range of library and language features, including proposals related to executors, atomics, generic programming, futures, and multidimensional arrays. Since receiving her Ph.D. in Quantum Chemistry in 2013, her research has focussed primarily on parallel and concurrent programming models, though a broader focus on general accessibility of complex abstractions has become her focus in more recent years. She also currently serves as the Program Chair of CppCon. She currently works on C++ language and library design at Google, where she continues to focus on providing broad accessibility of programming models and abstractions, with a particular focus on design for diversity and inclusivity.
Kris Jusiak
Kris is a Senior Software Architect passionate about programming and has worked in different industries over the years including telecommunications, games, and most recently finance for Quantlab Financial, LLC. 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 meta-programming techniques to support the C++ rule - "Don't pay for what you don't use" whilst trying to be as declarative as possible with the help of domain-specific languages. Kris is also a keen advocate of extreme programming techniques, Test/Behavior Driven Development and truly believes that 'the only way to go fast is to go well!'.
---
Video Sponsors: think-cell and Bloomberg Engineering
Audience Audio Sponsors: Innoplex and Maryland Research Institute
---
Videos Filmed & Edited By Bash Films: bashfilms.com/
RU-vid Channel Managed & Optimized By Digital Medium Ltd: events.digital...
---
CppNow 2024
www.cppnow.org
/ cppnow
---
#boost #cpp #cppprogramming
27 авг 2024