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 redundant 'expression' #2085

Merged
merged 1 commit into from Jun 29, 2018
Merged

Drop redundant 'expression' #2085

merged 1 commit into from Jun 29, 2018

Conversation

jensmaurer
Copy link
Member

when calling out a value category.

Fixes #2069.

@jensmaurer
Copy link
Member Author

I've left "Zvalue expression" in two places where it was talking about evaluating; talking about "evaluating a Zvalue" sounds strange (there's already a value, right?). Evaluating an expression sounds a lot better.

@languagelawyer
Copy link
Contributor

languagelawyer commented Jun 26, 2018

Wait, wait, wait... I think you also need to fix value category definition: "This property of an expression is called its value category."

If "Zvalue" is a property of an expression, then then "Zvalue expression" doesn't sound like "mammal animal" and makes sense: it is expression with property "Zvalue". It analogous to something like "tennis ball". You can't drop "ball" and just write "tennis".

@jensmaurer jensmaurer added the decision-required A decision of the editorial group (or the Project Editor) is required. label Jun 27, 2018
@jensmaurer
Copy link
Member Author

@zygoloid, I believe my changes make sense; we talk about "prvalue" (without mentioning "expression") quite a lot.

when calling out a value category.
@jensmaurer
Copy link
Member Author

Rebased.

@languagelawyer
Copy link
Contributor

languagelawyer commented Jun 27, 2018

@jensmaurer sorry, my bad, I was not clear. I'm not saying the changes are wrong. I'm just saying that Zvalue defined both as "is expression (with some particular properties)" almost everywhere and at least in one place it is defined as a property of an expression. BOTH "prvalue" and "prvalue expression" are correct, the later form does not necessarily sound like "mammal animal", "prvalue" there acts as an adjective.

My point is: if the usage of "Zvalue" as an adjective is completely eliminated, I think it makes sense to rewrite this wording where "Zvalue" defined as a property of an expression and leave only as a subclass of expression.

@jensmaurer
Copy link
Member Author

@languagelawyer, agreed, but there are a few situations where we should probably keep "Xvalue expression". So we can't go all the way where you want to be.

@jensmaurer jensmaurer removed the decision-required A decision of the editorial group (or the Project Editor) is required. label Jun 27, 2018
@zygoloid
Copy link
Member

@languagelawyer To continue our tortured mammal/animal analogy, the analogue to [basic.lval]p2 would be:

Every animal belongs to exactly one of the classes in this taxonomy: amphibian, arachnid, [...], mammal, [...] xenoturbidellan, or xiphosurans. This property of an animal is called its class. [...]

I think it's reasonable to say that the value category is a property of an expression, despite also saying that each value category is a specific kind of expression. "xvalue" is not a property of an expression, but "value category" is -- we can't say "this expression is xvalue", but we can say "the value category of this expression is xvalue" (but there are better ways to say that), or "if these two expressions have the same value category, then [...]".

Keeping around a few utterances of "xvalue expression" doesn't seem terrible, especially if they aid comprehensibility, but it should be understood that that is parsed like "doctor horse" (that is, a doctor who is also a horse), not like "horse doctor" (with "horse" modifying "doctor").

@zygoloid zygoloid merged commit 69259f9 into cplusplus:master Jun 29, 2018
@languagelawyer
Copy link
Contributor

the analogue to [basic.lval]p2 would be

Your analogue is not bijective: you've used the same word "class" for both "fundamental classification" and "value category".

@jensmaurer jensmaurer deleted the b12 branch June 29, 2018 22:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants