State of C++ Evolution (between Portland and Oxford 2007 Meetings)

This paper presents a quick summary of all papers submitted to WG21 for
consideration by the Evolution Working Group, with an indication of their
progress towards inclusion in the next C++ Standard.

There are no library issue here, unless highlighted by the Registration Document
submitted following the Portland meeting. Otherwise this list focuses entirely on
changes affecting clauses 1 -> 16.

A note on the timetable

The whole committee expressed a strong desire to deliver the next C++ Standard in
2009. In order to meet ISO timetables that will mean voting out a Final Candidate
Document at the end of 2007. That leaves two more meetings to finish the EWG work,
and finalise all wording. Therefore, next version of this paper will not have a
Stalled section - anything stalled at the end of the next meeting is too late.
Likewise, pressure will build very quickly on CWG as papers receive final wording and
require review. We have seen very few papers go through review without some revision,
often several revisions. The more we can do to supply papers with complete wording in
advance of a meeting the better. I would hope the Blessed By Evolution - Wording Required
section could be cleared between meetings. If an offline review of proposed wording
with a member of Core can be arranged in advance of the meeting, that should help
identify first-order problems so there is a much better chance of the paper making
its final revision at the meeting, in order for Core to move forward into the Working
Paper.

Key to the table

Papers have been grouped according to theme, and related papers joined into the
same row, even when submitted by different authors. The intent is to capture the
feature, rather than the workflow. Papers are ordered by theme, and themes
ordered by document number for the first submission on that theme.

Note that while the deadline for new proposals for C++09 is long past, it is not unusual
to split a specific feature out of an existing proposal, to ease their progress.
Likewise, existing Core Working Group issues may grow large enough to merit a paper
that would not have previously shown on this list.

Proposals in a green font have advanced a category since the last
meeting, those in red have moved back, while those in
yellow are new or have been updated since the last meeting.

Issues with a green background have been highlighted as the features that will
be delivered in the next version of the standard in the Registration Document.

WG21 Number(s)

Title

Authors

Integrated into working paper

These propsals are already incorporated into the latest working paper,
N2134,
or the project editor has been directed to include them in the next draught.

These papers are undergoing final scrutiny in Core Working group, and have all
been reviewed at least once. Full wording is available, and has been reviewed
at least once by the CWG. However, some draughting issues remain to be resolved
before moving into the Working Paper.

The design of these features is deemed complete and accepted by EWG, and
there is a paper with complete wording for Core to review. However, CWG
have not yet devoted any committee time to this issue. Typically papers in
this state have been accepted by EWG at the previous meeting, or the version
with proposed wording was not avaiable by the pre-meeting mailing.

The design of these features is deemed complete and accepted by EWG, but
there is not yet a paper with complete wording for Core to review.
Complete wording will include specific directions for the project editor to
apply directly to the Working Paper.

These topics have all been considered by Evolution at some point, and have not
yet actively rejected. However, there has been no EWG committee time spent on
them for at least one meeting, and unless an extremely strong case is presented
at the next meeting, they will all automatically drop out of consideration for
C++09 at the next meeting.
A strong case should at the very least include proposed wording that might be
applied directly to the Working Paper, and ideally a reference implementation.
It is also recommended to contact the EWG chair before doing further work, to
be sure that the EWG has resources to review/approve the proposal at the next
meeting.

These topics are deemed too important to wait for another standard after
C++09 before being published, but too experimental to be finalised in time
for the next Standard. Therefore, these features will be delivered by a
technical report at the earliest opportunity.

Papers in this category have been reviewed in EWG, and seen to solve real
problems. While it is hoped that work will continue, they are not ready to
be finalised in time for C++09. It is anticipated that this category will
grow as time pressure restricts the feature list for C++09.

These papers were presented, but failed to spark sufficient interest. There is
no reason these topics should not be resubmitted in the future, but there is no
intention to revisit these topics either. Any future submission should include
a strong motivation and possible futher use cases that were not considered first
time around.

These papers have either been superseded by different set of proposals, or were
identified as a something we do not want to do. While everyone is free to submit
papers they feel strongly about, it is unlikely any of these topics will gain
favour for a future standard unless something significantly new is presented
with the updated paper.