|
Boost : |
From: Peter Dimov (pdimov_at_[hidden])
Date: 2003-11-03 07:27:43
Thorsten Ottosen wrote:
> "Pavol Droba" <droba_at_[hidden]> wrote in message
> news:20031102121649.GC5136_at_lenin.felcer.sk...
>> On Sun, Nov 02, 2003 at 04:47:35PM +1100, Thorsten Ottosen wrote:
>>>
>>> "Pavol Droba" <droba_at_[hidden]> wrote in message
>>> news:20031101232101.GG27017_at_lenin.felcer.sk...
>>>> On Sat, Nov 01, 2003 at 10:01:08AM -1000, David Abrahams wrote:
>>>>> Pavol Droba <droba_at_[hidden]> writes:
>>>>
>>>> [snip]
>>>>
>>>>> I would really, really like to see a use case which isn't handled
> more
>>>>> cleanly and just as easily with an iterator-based "find"
>>>>> algorithm.
>>>>> I think it's important not to shove functionality into a library
>>>>> before we can prove its usefulness. It's easy to add
>>>>> functionality later but it's very hard to remove it once a
>>>>> library is out.
>>>>>
>>>
>>> It's not that hard, is it?
>>
>> I think, I understand what is Dave trying to say. It easy to add
>> something to a library, because an addition does not break anything,
>> while removal always brings a slight chance, that it would break
>> some code.
>
> my thought was that if it was heavily used, it was because it did
> serve a real need and removal was not necessary. If only a few people
> used it, it wouldn't be hard to depricate it.
No, not really. Consider the case where the same functionality canbe
accomplished in three different ways, two of them redundant. There will be
users that depend on either.
For a concrete example from the string algorithms library, consider erase_*
vs replace_* with an empty replacement, or erase_range versus the member
function erase.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk