> From: James Curran [mailto:JamesCurran@mvps.org]
> Sent: den 18 juni 2002 13:04
> To: boost@lists.boost.org
> Subject: [boost] Re: Future of share_ptr
>
>
> RE: [boost] Future of share_ptr What was the reaction at
> the Curacao
> meeting?
This is an excerpt from a note posted by Beman after the meeting:
--- smart pointer proposal status ---
[Curacao: The LWG expressed serious concerns about the proposal, and about
other smart pointer issues:
* Because user needs are so varied, Standard Library smart pointers should
support a full feature model, including user supplied behavior. A
policy-based design is seen as the only candidate likely to meet this
criteria.
* Because of the need for a single smart pointer to recommend for everyday
use, and for interoperability between third-party libraries, shared_ptr is
seen as a likely candidate for standardization. The LWG is interested
primarily in the interface and with interoperability, although aware that
implementation might well be forwarded to a policy-based smart pointer.
* Standard Library smart pointers should be viewed as a whole to ensure
consistency and interoperability; thus the idea of unrelated proposals for
non-policy based and policy-based smart pointers meets much resistance.
* Proliferation of Standard Library smart pointers is a serious concern; if
a policy-based smart pointer and a compatible shared_ptr were available,
they would be preferred; scoped_ptr, scoped_array, and shared_array were
not viewed favorably by many LWG members.
* LWG members are very concerned that "you don't have to pay for what you
don't use." This is particularly true of memory; increased memory use due
to multiple inheritance or to accommodate weak_ptr, for example, is viewed
as a serious problem.
* LWG members are concerned about usability and flexibility of designs with
multiple template policy parameters. A single policy parameter, with
policy composition by chained inheritance, would seem to have usability,
flexibility, and inter-policy communication advantages.
* In a quick (no discussion of exact meaning of terms) straw poll, the vote
was 9 1/2 yes, 0 no, to the question of whether or not a policy-based smart
pointer should support arrays. (The 1/2 vote was from someone undecided.)
* There was a bit of discussion and show of hands on non-member versus
member functions. No clear guidance resulted; the existing use of member
functions in std::auto_ptr and the Boost smart pointers muddied the
question.
Note that the LWG is still considers many of these concerns as subject to
change, as proposals are refined.]
--- end ---
Bjorn