
on Fri May 23 2008, Vladimir Prus <vladimir-AT-codesourcery.com> wrote:
David Abrahams wrote:
If possible, at this late stage, the names should be changed.
<another universe mode> Of course, since boost.filesystem is used by exactly zero real-world projects right now (because nobody was able to grok the meaning of 'leaf'), it's OK to change the names to more sane ones. </another universe mode>
<this universe mode> Given that boost.filesystem appears to be highly popular, and apparently users don't care about conceptual clarify of 'leaf', changing those names will basically cause everybody to change, or conditionally change, their code, without any practical benefit. </this universe mode>
It's easy enough to leave them deprecated, or even officially removed, but available for backward-compatibility.
Did you read all the messages in this thread? If you want to rename 'leaf' to 'basename', you cannot do that without breaking backward compatibility (no matter if you leave 'leaf' around as deprecated).
I guess I would have screamed a lot louder about "leaf" in 2003 if I had realized that the library was also inventing a new meaning for "basename" in a domain where it is already heavily used to mean something else. -- Dave Abrahams BoostPro Computing http://www.boostpro.com