Explore the intricacies of Boost.Dispatch, a generalized tag dispatching infrastructure library for C++, in this comprehensive conference talk from CppNow. Delve into the challenges of specifying function specializations over complex type constraints and learn how Boost.Dispatch offers a solution by providing a protocol for defining tags, mapping tags to function implementations, and extending specializations in a modular way. Discover how the library enables the use of function property categorization and architectural information to guide dispatch decisions. Gain insights into SFINAE, overloading, and traditional tag dispatching techniques, and understand their limitations. Through practical examples ranging from simple library design to high-performance computing code, examine how Boost.Dispatch selects optimal function implementations based on non-trivial architecture-dependent information. Conclude with an in-depth look at the library's implementation and a discussion of upcoming challenges in the field.
Overview
Syllabus
Introduction
What is about
Generic entry point
Tag dispatching
Disclaimer
Overload Sets
Limitations
Standard Derailleur
STD Advance
Advanced
BoostDispatch
Reduction
Architectures
DispatchTo
Fact
Macro
Plus
Taught by
CppNow