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

Drop references to a "function registry" #983

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

Drop references to a "function registry" #983

wants to merge 2 commits into from

Conversation

eemeli
Copy link
Collaborator

@eemeli eemeli commented Jan 20, 2025

As discussed previously (most recently in #974 (comment)), we should update our terminology to no longer refer to a "function registry", a term that we don't actually define.

This PR applies that change, along with some incidental cleanup. The term default function is introduced, and used where appropriate.

The GitHub label registry should probably also be renamed as default-functions.

@eemeli eemeli added the registry Issue pertains to the function registry label Jan 20, 2025
@eemeli eemeli requested a review from aphillips January 20, 2025 20:07
@aphillips aphillips added the LDML47 LDML 47 Release (Stable) label Jan 20, 2025
Copy link
Member

@aphillips aphillips left a comment

Choose a reason for hiding this comment

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

Some food for thought comments. Otherwise looks good.

Comment on lines +21 to +23
This section defines the **_<dfn>default functions</dfn>_**
which are REQUIRED for conformance with this specification,
along with _default functions_ that SHOULD be implemented to support
Copy link
Member

Choose a reason for hiding this comment

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

This dilutes the nice parallel between the name REQUIRED/RECOMMENDED and the 2119 associated keywords REQUIRED/RECOMMENDED for the various "default functions", although I diluted it for clarity by using SHOULD instead of RECOMMENDED when I created this section.

Note that we previously discussed name this the "Default Function Set" with "function set" being a term. I'm not sure that "function set" is useful as a term?

I am also not sure if "default" is the right term, if we include the recommended items in it.

Finally, I note that "This section..." might not be right, since we broke it up into a list of documents.

Perhaps:

Suggested change
This section defines the **_<dfn>default functions</dfn>_**
which are REQUIRED for conformance with this specification,
along with _default functions_ that SHOULD be implemented to support
This section defines the **_<dfn>default functions</dfn>_**.
This includes the **REQUIRED** _functions_,
which are required for conformance with this specification,
along with the **RECOMMENDED** _functions_
that SHOULD be implemented to support

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Now I'm confused: Are the bold REQUIRED and RECOMMENDED intended to be understood as RFC 2119 key words, or not? I'm also confused by your suggestion including "required for conformance" about the former and "SHOULD be implemented" about the latter.

I would find it easier to understand if we had only one set of default functions, which includes both those that are REQUIRED and those that are RECOMMENDED for implementation, without creating separate category labels for those subsets.

Copy link
Member

Choose a reason for hiding this comment

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

The idea is to clearly identify which functions and which options are required vs. recommended. The words are both 2119 keywords and "categories" (There is also the "proposed" state, for items not yet finalized that composes with REQUIRED/RECOMMENDED). We can discuss if the additional level of formality is needed in the call later today.


Implementations MUST _accept_ each **REQUIRED** _function_ and
MUST _accept_ all _options_ defined as **REQUIRED** for those _functions_.
Implementations MUST _accept_ each REQUIRED _default function_ and
Copy link
Member

Choose a reason for hiding this comment

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

I wouldn't make this change: I don't think it is necessary.


Implementations SHOULD _accept_ each **RECOMMENDED** _function_.
Implementations SHOULD _accept_ each RECOMMENDED _default function_.
Copy link
Member

Choose a reason for hiding this comment

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

Ibid.

@@ -34,34 +35,33 @@ Implementations MAY emit an _Unsupported Operation_ error for _options_
or _option_ values that they cannot support.

_Functions_ can define _options_.
An _option_ can be **REQUIRED** or **RECOMMENDED**.
An _option_ can be REQUIRED or RECOMMENDED.
Copy link
Member

Choose a reason for hiding this comment

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

The formatting here is intentional. Many such below. Won't repeat.

spec/functions/README.md Show resolved Hide resolved
spec/syntax.md Outdated Show resolved Hide resolved
@aphillips
Copy link
Member

About the label: I was waiting to rename it based on discussion of what the name should be 😉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
LDML47 LDML 47 Release (Stable) registry Issue pertains to the function registry
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants