At 02:32 PM 2/3/2003, Howard Hinnant wrote:
>On Monday, February 3, 2003, at 12:50 PM, Beman Dawes wrote:
>> To me, a major benefit of a policy based design is to be able to
>> accommodate a wide range of features, including those which find only
>> limited use.
>>
>> If a policy based smart pointer can't accommodate a wide range of
>> features, I start to wonder if the design itself is inflexible and
>> flawed. That's why I worry a lot about whether a given PBSP design can
>> handle apparently marginal uses.
>
>That is a strong argument. On the other hand, should a policy be
>provided for a configuration that is overly error prone or dangerous?
>I think the answer may be yes, but only if there is sufficient
>motivation (like a big performance increase). Otherwise, no. Why
>needlessly expose your clients to a dangerous interface?
There may be two separate issues:
* Should a PBSP supply policies that are prone to be used unsafely?
I'd say "no" is an acceptable answer, at least for something like the T*
conversion in widely used libraries like the Standard Library and Boost.
* Should a PBSP allow user supplied policies to modify interface, perhaps
in ways that may be unsafe or even just unfortunate?
That's tougher. At some point I lose interest in a PBSP if it prevents me
from doing the things I want to do, even if I only want to do them in the
privacy of my own code.
--Beman
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
- Re: [boost] Re: SmartPtr (Loki) - auto_ptr/move c'tor ... Beman Dawes
- [boost] Re: SmartPtr (Loki) - auto_ptr/move c'tor issu... David B. Held
- [boost] Array support [was SmartPtr (Loki) - auto_ptr/... Beman Dawes
- Re: [boost] Array support [was SmartPtr (Loki) - auto_... David Abrahams
- Re: [boost] Array support [was SmartPtr (Loki) - auto_... Beman Dawes
- [boost] Re: Array support [was SmartPtr (Loki) - auto_... David B. Held
- [boost] Re: Array support [was SmartPtr (Loki) - auto_... David B. Held
- Re: [boost] Array support [was SmartPtr (Loki) - auto_... Howard Hinnant
- Re: [boost] Array support [was SmartPtr (Loki) - auto_... Beman Dawes
- Re: [boost] Array support [was SmartPtr (Loki) - auto_... Howard Hinnant
- [boost] Re: Array support [was SmartPtr (Loki) - auto_... Beman Dawes
- [boost] Re: Array support [was SmartPtr (Loki) - auto_... Andrei Alexandrescu
- Re: [boost] Re: Array support [was SmartPtr (Loki) - ... Beman Dawes
- Re: [boost] Array support [was SmartPtr (Loki) - auto_... David Abrahams
- Re: [boost] Array support [was SmartPtr (Loki) - auto_... Beman Dawes
- [boost] Re: Array support [was SmartPtr (Loki) - auto_... Andrei Alexandrescu
- Re: [boost] Re: Array support [was SmartPtr (Loki) -au... Peter Dimov
- [boost] Re: Array support [was SmartPtr (Loki) - auto_... Howard Hinnant
- [boost] Re: Array support [was SmartPtr (Loki) -auto_p... Andrei Alexandrescu
- [boost] Re: Array support [was SmartPtr (Loki) -auto_p... Howard Hinnant
- [boost] Re: Array support [was SmartPtr (Loki)-auto_pt... Andrei Alexandrescu