Keynote: C++11 and No-Compromise Library Design
If you're writing reusable code and you're not taking full advantage of C++11's new features, stop what you're doing! The rules have changed, from the bottom -- like parameter-passing -- to the top -- like library versioning. Code written with C++11 can be more modular and composable than ever, with easier and safer-to-use interfaces, with better template error messages, and with less boilerplate. It's library design without the compromises.
I'll be giving examples from the redesigned Boost.Proto, an advanced library for building expression template-based libraries, but the lessons are broadly applicable to any code that is intended to be reused. The usual suspects like move semantics, and variadics will be covered, but also some lesser known players that change the landscape in surprising ways, including the ONE tiny C++11 feature that caused the most grief and provided the most unique solution...
Keynote Speaker: Eric Niebler