Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

P2047 R7 An allocator-aware optional type #777

Open
wg21bot opened this issue Jan 18, 2020 · 14 comments
Open

P2047 R7 An allocator-aware optional type #777

wg21bot opened this issue Jan 18, 2020 · 14 comments
Labels
B3 - addition Bucket 3 as described by P0592: material that is not mentioned in P0592 C++26 Targeted at C++26 IS Ship vehicle: IS LEWG Library Evolution ready-for-library-evolution-meeting-review This paper needs to be discussed at a Library Evolution meeting size - medium paper size estimate
Milestone

Comments

@wg21bot
Copy link
Collaborator

wg21bot commented Jan 18, 2020

P2047R0 An allocator-aware optional type (Nina Ranns, Pablo Halpern, Ville Voutilainen)

@wg21bot wg21bot added LEWG Library Evolution LEWGI Library Evolution Incubator labels Jan 18, 2020
@wg21bot wg21bot added this to the 2020-02 milestone Jan 18, 2020
@jensmaurer jensmaurer removed the LEWG Library Evolution label Feb 8, 2020
@brycelelbach brycelelbach added this to 2020-05-04 Telecon in Library Evolution Telecons Apr 21, 2020
@brycelelbach brycelelbach removed this from 2020-05-04 Telecon in Library Evolution Telecons Apr 21, 2020
@brycelelbach brycelelbach added LEWG Library Evolution B2 - improvement Bucket 2 as described by P0592: bug fixes, performance improvements, integration fixes for/between e IS Ship vehicle: IS ready-for-library-evolution-mailing-list-review This paper needs to be discussed on the Library Evolution mailing list and removed LEWGI Library Evolution Incubator labels Aug 25, 2020
@cor3ntin cor3ntin added the needs-revision Paper needs changes before it can proceed label Oct 5, 2020
@cor3ntin
Copy link

cor3ntin commented Oct 5, 2020

Author informed me a new revision will be available soon, postponing the mailing list review

@jensmaurer jensmaurer modified the milestones: 2020-02, 2021-telecon Dec 28, 2020
@wg21bot
Copy link
Collaborator Author

wg21bot commented Feb 22, 2021

P2047R1 An allocator-aware optional type (Nina Ranns, Pablo Halpern Ville Voutilainen)

@wg21bot wg21bot removed the needs-revision Paper needs changes before it can proceed label Feb 22, 2021
@cor3ntin cor3ntin added scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review ready-for-library-evolution-mailing-list-review This paper needs to be discussed on the Library Evolution mailing list and removed ready-for-library-evolution-mailing-list-review This paper needs to be discussed on the Library Evolution mailing list labels Feb 22, 2021
@inbal2l
Copy link
Collaborator

inbal2l commented May 18, 2021

Was seen on LEWG ML review, attaching a short summary:

A request to generalize: The C++ standard library should provide building blocks that allow multiple semantics to be expressed, as opposed to deciding on a narrow subset, and making an allocator-aware optional obey the static properties, namely the propagation traits, of an allocator is a fundamental piece of such genericity.
Paper: https://wg21.link/P2080
Discussion: https://wiki.edg.com/bin/view/Wg21prague/P2080?twiki_redirect_cache=5f21bb7a48b999eacea108a04aacdcd3
Author: If this is a direction LEWG wants to follow, I'm happy to amend the proposal to a more allocator generic optional type. I'd be hesitant to do so until we have an agreement and a decision that this is a direction we want to take.

It seems like we can just as well put the allocator-aware optional into the same header as the existing optional.
Author: Agreed.

I would suggest scheduling a discussion to get broader feedback on the preferred direction of this paper.

Action Item: Waiting for a new revision.

@brycelelbach brycelelbach added size - small paper size estimate size - medium paper size estimate and removed size - small paper size estimate labels Aug 1, 2021
@wg21bot
Copy link
Collaborator Author

wg21bot commented Aug 23, 2021

P2047R2 An allocator-aware optional type (Nina Ranns, Pablo Halpern, Ville Voutilainen)

@inbal2l inbal2l removed ready-for-library-evolution-mailing-list-review This paper needs to be discussed on the Library Evolution mailing list scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review labels Sep 8, 2021
@brycelelbach brycelelbach added scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review ready-for-library-evolution-mailing-list-review This paper needs to be discussed on the Library Evolution mailing list labels Sep 9, 2021
@billy-baker
Copy link
Collaborator

billy-baker commented Jul 19, 2022

2022-07-19 Library Evolution Telecon

P2047R2: An allocator-aware optional type

2022-07-19 Library Evolution Telecon Minutes

Chair: Billy Baker

Minute Taker:

Champion: Pablo Halpern

Chair Notes

POLL: Provide basic_optional (unlimited flexibility/fancy pointer) rather than std::pmr::optional (simplified model/ignore allocation traits) for an allocator aware optional.

Strongly Favor Weakly Favor Neutral Weakly Against Strongly Against
1 4 2 0 0

Attendance: 13

# of Authors: 3

Author Position: 1 SF , 2 WF

Outcome: Consensus for basic_optional.

The poll text in ()'s comes from the presentation.

Next Steps

This paper will be revised and return to Library Evolution for further review.

@wg21bot
Copy link
Collaborator Author

wg21bot commented Jul 21, 2022

P2047R3 An allocator-aware optional type (Nina Ranns, Pablo Halpern Ville Voutilainen)

@brycelelbach brycelelbach added scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review and removed scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review labels Aug 3, 2022
@brycelelbach brycelelbach added needs-revision Paper needs changes before it can proceed and removed scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review labels Sep 22, 2022
@wg21bot
Copy link
Collaborator Author

wg21bot commented Oct 17, 2022

P2047R4 An allocator-aware optional type (Nina Ranns, Pablo Halpern Ville Voutilainen)

@wg21bot wg21bot removed the needs-revision Paper needs changes before it can proceed label Oct 17, 2022
@brycelelbach brycelelbach added the scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review label Nov 7, 2022
@wg21bot
Copy link
Collaborator Author

wg21bot commented Jan 16, 2023

P2047R5 An allocator-aware optional type (Nina Ranns, Pablo Halpern Ville Voutilainen)

@brycelelbach brycelelbach removed the scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review label Jan 23, 2023
@jensmaurer jensmaurer modified the milestones: 2022-telecon, 2023-02 Jan 25, 2023
@brycelelbach brycelelbach added size - small paper size estimate size - medium paper size estimate and removed size - medium paper size estimate size - small paper size estimate labels Jan 25, 2023
@brycelelbach
Copy link

P2047R6 An allocator-aware optional type (Nina Ranns, Pablo Halpern Ville Voutilainen)

@brycelelbach
Copy link

brycelelbach commented Feb 7, 2023

2023-02-06 10:30 to 12:00 Issaquah Library Evolution Meeting

P2047R6: Allocator-aware optional type

2023-02-06 10:30 to 12:00 UTC-8 Issaquah Library Evolution Minutes

Champion: Pablo Halpern (IP)

Chair: Bryce Adelstein Lelbach (IP) & Ben Craig (IP)

Minute Taker: Steve Downey (IP)

Start: 2023-02-06 HH:MM UTC-8

Does this paper have:

  • Examples?
    • No.
  • Field experience?
    • Implementation experience?
      • Yes, will be linked in the next revision.
    • Usage experience?
      • Yes, internally at some organizations.
    • Deployment experience?
      • Yes, internally at some organizations.
  • Performance considerations?
    • More exploration of the compile time costs are needed.
  • Discussion of prior art?
    • Yes.
  • Changes Library Evolution previously requested?
    • Yes.
  • Wording?
    • Yes.
  • Breaking changes?
    • No.
  • Feature test macro?
    • No, will be added in the next revision.
  • Freestanding?
    • No.

POLL: We should have an allocator-preserving optional in the Standard Library.

Strongly Favor Weakly Favor Neutral Weakly Against Strongly Against
4 6 7 4 4

Attendance: 23 (in person) + 10 (remote)

# of Authors: 2

Author Position: 2x SF

Outcome: No consensus.

End: 12:04

Summary

This paper proposes adding an allocator-preserving optional. There was debate about the merits of doing this and how widely it would be used. There was concern about modifying optional itself; some who were opposed to this paper indicated their objection would be less if we avoided modifying optional and instead added a new facility.

During our discussion, it became apparent that we need to have a policy discussion about allocator support in the Standard Library. At the end of our discussion, we did not have consensus to pursue the feature in this paper.

Next Steps

We will not pursue P2047R6 (An allocator-preserving optional), unless there is substantial new information.

@brycelelbach brycelelbach added needs-revision Paper needs changes before it can proceed scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review and removed scheduled-for-library-evolution This paper has been scheduled for one of the groups: LEWG, LEWG Incubator, or a Mailing List review labels Feb 7, 2023
@wg21bot wg21bot removed the needs-revision Paper needs changes before it can proceed label Feb 20, 2023
@wg21bot
Copy link
Collaborator Author

wg21bot commented Feb 16, 2024

P2047R7 An allocator-aware optional type (Nina Ranns, Pablo Halpern Ville Voutilainen)

@wg21bot wg21bot modified the milestones: 2023-02, 2024-telecon Feb 16, 2024
@wg21bot wg21bot changed the title P2047 An allocator-aware optional type P2047 R7 An allocator-aware optional type Feb 16, 2024
@wg21bot wg21bot reopened this Feb 16, 2024
@inbal2l
Copy link
Collaborator

inbal2l commented Feb 16, 2024

Will be seen post P3002, as the motivation for it strongly correlated (and to avoid repeating the same arguments).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
B3 - addition Bucket 3 as described by P0592: material that is not mentioned in P0592 C++26 Targeted at C++26 IS Ship vehicle: IS LEWG Library Evolution ready-for-library-evolution-meeting-review This paper needs to be discussed at a Library Evolution meeting size - medium paper size estimate
Projects
Development

No branches or pull requests

6 participants