Skip to content

Change use of "UFCS" to "fully-qualified function call syntax" - #3366

Closed
SteveAlexander wants to merge 1 commit into
rust-lang:masterfrom
SteveAlexander:master
Closed

SteveAlexander wants to merge 1 commit into
rust-lang:masterfrom
SteveAlexander:master

Conversation

@SteveAlexander

@SteveAlexander SteveAlexander commented Jan 4, 2023 •

Copy link
Copy Markdown

As discussed in #3360, this PR updates RFC 132 and RFC 255 to use clearer terminology regarding fully-qualified function call syntax, and links to the relevant section of the Rust Reference.

Rendered

@ehuss ehuss added T-lang Relevant to the language team, which will review and decide on the RFC. not-rfc For PRs that fix things like spelling mistakes, wrong file names, etc. labels Jan 4, 2023
Comment thread text/0132-ufcs.md
Comment on lines +7 to +14
This RFC describes the fully-qualified syntax for making function calls,
which was previously called Unambiguous or Universal Function Call Syntax
(UFCS). The [Rust Reference section on call expressions] provides
an overview of this syntax, and reasons for the change in terminology.

There are a variety of extensions to allow any method to be used as
first-class functions. The same extensions also allow for trait methods
without receivers to be invoked in a more natural fashion.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changing the structure of this entire paragraph doesn't seem necessary to add the explanatory note, and usually RFCs are preserved as close to as-written as reasonable. The intent is good overall with this PR but please favor additive over subtractive changes.

Comment on lines +73 to +77
Another advantage of this proposal is that it implies that all method-calls
can always be rewritten into an equivalent fully-qualified function call
(see [RFC 132]). This simplifies the "core language" and makes method dispatch
notation -- which involves some non-trivial inference -- into a kind of
"sugar" for the more explicit fully-qualified notation.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good, but is there a version that minimizes the diff?

@Urgau

Urgau commented Nov 3, 2025

Copy link
Copy Markdown
Member

We discussed this pull request during @rust-lang/internal-sites triage of non-RFC PRs in #t-internal-sites > Stale non-RFC PRs @ 💬.

As mentioned in The RFC life-cycle, RFCs are historical snapshots of a decision made in the past and "only very minor changes should be submitted as amendments".

Changing "UFCS" to "fully-qualified function call syntax" would alter the context and the historical record of the original decision.

Therefore, we are closing this PR in accordance with the policy.

@Urgau Urgau closed this Nov 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

not-rfc For PRs that fix things like spelling mistakes, wrong file names, etc. T-lang Relevant to the language team, which will review and decide on the RFC.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants