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

Discuss RFC 2442: Simple postfix macros #247

Closed
traviscross opened this issue Jan 3, 2024 · 3 comments
Closed

Discuss RFC 2442: Simple postfix macros #247

traviscross opened this issue Jan 3, 2024 · 3 comments
Labels
meeting-proposal Proposal for a lang team design meeting T-lang

Comments

@traviscross
Copy link
Contributor

Summary

We plan to discuss RFC 2442, "Simple postfix macros".

If we have time, we'll also discuss RFC 3295, "Postfix match".

@joshtriplett is preparing a document for us.

Background reading

About this issue

This issue corresponds to a lang-team design meeting proposal. It corresponds to a possible topic of discussion that may be scheduled for deeper discussion during one of our design meetings.

@traviscross traviscross added meeting-proposal Proposal for a lang team design meeting T-lang labels Jan 3, 2024
@traviscross traviscross moved this from Needs triage to Scheduled in T-lang design meeting schedule Jan 3, 2024
@joshtriplett
Copy link
Member

@joshtriplett
Copy link
Member

joshtriplett commented Jan 17, 2024

Capturing the summary here:

  • Everyone on the team agreed that non-type-based dispatch of postfix macros was fine.
  • The desugaring in the RFC doesn't work for places (e.g. $self = $x). We need to either define a mechanism/desugaring that works for that, or decide we don't need to support that. Places work with closures today (e.g. |y| { x = y }), but we need to decide if we want it to work with postfix macros. We also need to figure out if it's simpler to support this or to not support this.
  • Niko and Tyler expressed that they're not sure we have to mandate eager evaluation, and people may not necessarily misuse it. Niko noted that this would be simpler to implement if we didn't mandate that. Tyler expressed willingness to go ahead with an eager-required implementation, though.
  • We could potentially make eager-evaluated macro arguments a separate, orthogonal feature. For instance, $foo:expr_eval. (We would still have the option of mandating the use of that with $self.)

@joshtriplett
Copy link
Member

@Nadrieril suggested place for the desugaring, instead of autoref.

@traviscross traviscross moved this from Scheduled to Done in T-lang design meeting schedule Jan 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
meeting-proposal Proposal for a lang team design meeting T-lang
Projects
Development

No branches or pull requests

2 participants