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

Define missing definitions for variables #775

Merged
merged 3 commits into from
May 6, 2024
Merged

Conversation

aphillips
Copy link
Member

During publication of v45, I found that we were missing a number of terms that we actively use in the specification. Among these are:

  • variable
  • external variable
  • local variable

This PR defines those terms.

During publication of v45, I found that we were missing a number of terms that we actively use in the specification. Among these are:

- variable
- external variable
- local variable

This PR defines those terms.
@aphillips aphillips added syntax Issues related with MF Syntax LDML46 LDML46 Release (Tech Preview - October 2024) labels Apr 23, 2024
spec/syntax.md Outdated Show resolved Hide resolved
@aphillips aphillips requested a review from eemeli April 23, 2024 23:35
spec/syntax.md Outdated
@@ -97,6 +97,14 @@ Attempting to parse a _message_ that is not _valid_ will result in a _Data Model

A **_<dfn>message</dfn>_** is the complete template for a specific message formatting request.


A **_<dfn>variable</dfn>_** is a data value bound to a _name_.
Copy link
Collaborator

Choose a reason for hiding this comment

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

I don't think "name" has been defined -- or is it meant to refer to name as defined in the grammar? But if so, then variable doesn't need to be defined here either, since it's in the grammar.

Also, this conflicts with the later statement that: "A local-declaration binds a variable to the resolved value of an expression." Maybe that sentence should be changed to say "name" instead of "variable"?

Copy link
Member Author

Choose a reason for hiding this comment

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

I don't think "name" has been defined

name has a definition here

variable needs to be defined because we (try to) link it many times in the spec.

Maybe that sentence should be changed to say "name" instead of "variable"?

Good point. Perhaps by saying something like:

A local-declaration creates a variable by binding a name to the resolve value of an expression.

spec/syntax.md Show resolved Hide resolved
Responding to @catamorphism's comment.

This change adopts the already-problematic phrase "resolved value", which is begging for us to define it.
@aphillips aphillips merged commit 6db127f into main May 6, 2024
1 check passed
@aphillips aphillips deleted the aphillips-define-variable branch May 6, 2024 16:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
LDML46 LDML46 Release (Tech Preview - October 2024) syntax Issues related with MF Syntax
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants