RFC: Deprecate libstdc++ Policy-Based Data Structures
Jonathan Wakely
jwakely.gcc@gmail.com
Wed Jul 24 10:38:00 GMT 2019
[Removing gcc@gcc.gnu.org from the CC list]
On Tue, 23 Jul 2019 at 17:50, Alexander Kulkov wrote:
>
> Sounds fair to me. Well, I personally might be interested in providing fixes and improvements for the code. I might even try to find some other people in community to contribute.
That would be great.
> PBDS is very well-thought library which I admired since the moment I saw it, and the possibility that it may completely go to waste kind of disappoints me, so I might put considerable effort to save it if that's possible.
I would move it to a separate project hosted somewhere like
https://sourceware.org/pbds so I don't see it going to waste. It just
doesn't need to be part of libstdc++ because it's not part of the C++
Standard Library. We already have a problem with resources to
implement what's actually supposed to be in the C++ Standard Library,
so non-standard extensions that hardly anybody uses make more sense in
a separate project IMO.
Also, if they are in a separate project then it would be possible to
use them independently of libstdc++, so they would be available for
users of libc++ and Microsoft's library. That's currently impractical,
because they are coupled to libstdc++.
And a git repo hosted on sourceware.org could be mirrored and cloned
to github, where the cool kids hang out, and might attract more
interest. So it's entirely possible that moving the code to a separate
project could give it a new lease of life, rather than stagnating as
part of libstdc++.
> The major issue, though, is that I don't really know even how to start since I'm completely new to libstdc++ and have little experience with such huge projects. Any help and/or advice here in how I may contribute would be much appreciated.
Start with https://gcc.gnu.org/contribute.html and
https://gcc.gnu.org/wiki/GettingStarted
If I were interested in keeping pb_ds alive I would propose a fix for
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81806 and I would
regenerate the graphs in the documentation that show poor binary heap
performance, as mentioned in
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62045 (the bug is fixed,
but the graph it links to still shows binary_heap having exponentially
bad performance, and likewise for
https://gcc.gnu.org/onlinedocs/libstdc++/manual/policy_based_data_structures_test.html#performance.priority_queue.text_push
and https://gcc.gnu.org/onlinedocs/libstdc++/manual/policy_based_data_structures_test.html#performance.priority_queue.text_push_pop
etc.)
More information about the Libstdc++
mailing list