I view move semantics as the marquee feature of C++0x.  Use of and control over move semantics is as central to C++0x as is use of and control over copy semantics in “old” C++ (i.e., C++98/C++03).

The implementation of move semantics relies on rvalue references, so this session would really be about both move semantics and rvalue references.  Even if you’ve been casting an eye towards C++0x developments for the last couple of years and are familiar with the basic ideas behind rvalue references and move semantics, you may not be aware that the rules were changed in some fairly significant ways in the last 18 months.  Lvalues may no longer bind to rvalue references, and move constructors and move assignment operators are now “special member functions” (like copy constructors and copy assignment operators) that compilers implicitly generate under suitable circumstances.

What are your feelings about a session devoted to explaining the central role of move semantics and rvalue references in C++0x?

Scott