C++Now 2017 has ended
Back To Schedule
Friday, May 19 • 4:30pm - 6:00pm
Customization Points That Suck Less

Log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
Slides: https://github.com/boostcon/cppnow_presentations_2017/blob/master/05-19-2017_friday/customization_points_that_such_less__michal_dominiak__cppnow_05-19-2017.pdf
Video: https://www.youtube.com/watch?v=LC7BuYeDezQ

Flexible customization points are a hard thing to provide in C++. Some - and this includes the standard library - go the way of template specializations, but everyone who ever needed to create a customization point of this kind for a type (and a template) somewhere several namespaces deep knows how much pain this involves.

Others go the way of free functions, relying on ADL to select the proper overload - but ADL isn't the most user-friendly mechanism that exists in C++.

In this talk I'll attempt to enumerate the various means of providing customization points for library (and core language!) features, including several case studies of how this is done in different libraries, and will propose one that I haven't seen in the wilds before (but am sure that it exists somewhere), and show how to integrate it with type erasure. I'll also talk about how this relates to Concepts TS - and a thing called "virtual concepts", which is an attempt at marrying Concepts with type erasure.

avatar for Michał Dominiak

Michał Dominiak

System Software Engineer, Nvidia

Friday May 19, 2017 4:30pm - 6:00pm MDT