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

Initiative: ? traits, try blocks, yeet exprs, oh my #160

Closed
scottmcm opened this issue Apr 24, 2022 · 3 comments
Closed

Initiative: ? traits, try blocks, yeet exprs, oh my #160

scottmcm opened this issue Apr 24, 2022 · 3 comments
Labels
final-comment-period The FCP has started, most (if not all) team members are in agreement major-change Major change proposal T-lang to-announce Not yet announced MCP proposals

Comments

@scottmcm
Copy link
Member

Proposal

Summary and problem statement

Getting existing error handling capabilities to stable, and exploring future possibilities to ensure compatibility.

Motivation, use-cases, and solution sketches

This is basically https://rust-lang.github.io/rfcs/0243-trait-based-exception-handling.html -- while ? is available on stable, the traits behind it are not, try blocks are not, and there's continued interest (https://areweyeetyet.rs/) in exploring some of the future possibilities it brought up.

There's sortof a defacto initiative going on here -- see the mention in these meeting notes https://github.com/rust-lang/lang-team/blob/master/design-meeting-minutes/2022-03-09-lang-roadmap.md#q-which-active-initiatives-are-missing -- but it seems like it would be helpful to have one to track it explicitly.

Links and related work

Some examples of things that could be included here:

Initial people involved

What happens now?

This issue is part of the lang-team initiative process. Once this issue is filed, a Zulip topic will be opened for discussion, and the lang-team will review open proposals in its weekly triage meetings. You should receive feedback within a week or two.

This issue is not meant to be used for technical discussion. There is a Zulip stream for that. Use this issue to leave procedural comments, such as volunteering to review, indicating that you second the proposal (or third, etc), or raising a concern that you would like to be addressed.

@scottmcm scottmcm added major-change Major change proposal T-lang labels Apr 24, 2022
@rustbot
Copy link
Collaborator

rustbot commented Apr 24, 2022

This issue is not meant to be used for technical discussion. There is a Zulip stream for that. Use this issue to leave procedural comments, such as volunteering to review, indicating that you second the proposal (or third, etc), or raising a concern that you would like to be addressed.

@rustbot rustbot added the to-announce Not yet announced MCP proposals label Apr 24, 2022
@joshtriplett
Copy link
Member

@rustbot second

@rustbot rustbot added the final-comment-period The FCP has started, most (if not all) team members are in agreement label Apr 24, 2022
bors added a commit to rust-lang-ci/rust that referenced this issue May 1, 2022
Add `do yeet` expressions to allow experimentation in nightly

Two main goals for this:
- Ensure that trait restructuring in rust-lang#84277 (comment) doesn't accidentally close us off from the possibility of doing this in future, as sketched in https://rust-lang.github.io/rfcs/3058-try-trait-v2.html#possibilities-for-yeet
- Experiment with the *existence* of syntax for this, to be able to weight the syntax-vs-library tradeoffs better than we can right now.  Notably the syntax (with `do`) and name in this PR are not intended as candidates for stabilization, but they make a good v0 PR for adding this with minimal impact to compiler maintenance or priming one possible name choice over another.

r? `@oli-obk`
The lang `second` for doing this: rust-lang/lang-team#160 (comment)

Tracking issues
- Lang, rust-lang#96373
- Libs-api, rust-lang#96374
workingjubilee pushed a commit to tcdi/postgrestd that referenced this issue Sep 15, 2022
Add `do yeet` expressions to allow experimentation in nightly

Two main goals for this:
- Ensure that trait restructuring in rust-lang/rust#84277 (comment) doesn't accidentally close us off from the possibility of doing this in future, as sketched in https://rust-lang.github.io/rfcs/3058-try-trait-v2.html#possibilities-for-yeet
- Experiment with the *existence* of syntax for this, to be able to weight the syntax-vs-library tradeoffs better than we can right now.  Notably the syntax (with `do`) and name in this PR are not intended as candidates for stabilization, but they make a good v0 PR for adding this with minimal impact to compiler maintenance or priming one possible name choice over another.

r? `@oli-obk`
The lang `second` for doing this: rust-lang/lang-team#160 (comment)

Tracking issues
- Lang, rust-lang/rust#96373
- Libs-api, rust-lang/rust#96374
@nikomatsakis
Copy link
Contributor

Per the new process we've adopted, i'm going to close this issue and delegate to existing tracking issues like #84277 and #31436.

icecream17 added a commit to icecream17/words that referenced this issue Nov 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
final-comment-period The FCP has started, most (if not all) team members are in agreement major-change Major change proposal T-lang to-announce Not yet announced MCP proposals
Projects
None yet
Development

No branches or pull requests

4 participants