Any proposals that could use an implementation?

For those of us who weren’t previously engaged with the development of the standard library or ISO papers, could there be a list proposals that need an implementation or some sort of guide for how to pick one?

Thanks,
John P

3 Likes

If there’s a good answer to this, I think it’d be a great candidate to add to the FAQ. Something like “So how do I get started?”

Great question @jpavan! Here are three that I’m involved with that could definitely use a Beman implementation:

  • Give std::optional Range Support (P3168R1). This would likely involve taking one of the Open Source std::optional implementations and adding these extra member functions with some documentation and tests.
  • inplace_vector (P0843R11). This should be a fun one to implement. David Stone has a partial implementation somewhere. The particularly interesting part would be figuring out to what extend the constexpr functions can be implemented.
  • Atomic floating-point min/max (P3008R1). This is a small proposal that would be a good place to get started.
1 Like

I guess, the Beman Project should probably maintain a list/table of currently “active” subproject: any paper in flight would constitute an “active” subproject. The list provided would point to

  1. The paper.
  2. Some sort of status.
  3. github repos with its Beman Project implementation(s) where available.

I’d assume each of these subprojects would appreciate contributions in the form of code, documentation, review, or use feedback: each of these can be valuable. If we get the Beman Project properly stablished the activity could actually be used as a gauge of how much community interest is in a paper.

While there isn’t a list of active subprojects, yet, you can find active library proposals at open-std.org, the site hosting the mailings.

Adding a few proposals we want to get the implementation for (feel free to reach out to the authors!):

  1. P3045R0: Quantities and units library (Mateusz Pusz, Dominik Berner, Johel Ernesto Guerrero Peña, Charles Hogg, Nicolas Holthaus, Roth Michaels, Vincent Reverdy)
  2. P3126R0: Graph Library: Overview (Phil Ratzloff, Andrew Lumsdaine)
  3. P3300R0: C++ Asynchronous Parallel Algorithms (Bryce Adelstein Lelbach)
  4. P0260R8: C++ Concurrent Queues (Detlef Vollmann, Lawrence Crowl, Chris Mysen, Gor Nishanov)
  5. P2542R8: views::concat (Hui Xie, S. Levent Yilmaz)

More to follow… :slight_smile:

1 Like