
On Apr 11, 2006, at 10:43 AM, Peter Dimov wrote:
What is the general procedure for evolving TR1 (now 0x) components further, and in particular, what is the fate of N1851, "Improving Usability and Performance of TR1 Smart Pointers", especially the allocator support section?
In other words, should we spend significant time on improving (for example) shared_ptr, or should we focus on new, TR2 things, now that std::shared_ptr is almost set in stone?
N1851 was not discussed in Berlin (lack of time). The status as summarized in N1954: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1954.html stands as it was in Mont Tremblant. "Set in stone" is probably not the right characterization. The C++0X working draft is just that, a draft. We anticipate that it will continue to change. Defect reports will be applied to it. Language changes that may be introduced could have a large impact on the library portions of the draft (e.g. bind could radically change if lambda functions are introduced into the language). In part, getting items into the working draft is to solve a logistical problem. We need a document that we can read, edit and improve. We can't as easily create a perfect document when large parts of it (that we know we want in principal) are scattered throughout various papers. We know we want shared_ptr or something very much like it. It may mutate before standardization. But we feel its current specification is sufficient for the working draft. -Howard