-
Notifications
You must be signed in to change notification settings - Fork 8
[basic.exec] executed vs. evaluated #871
Description
Full name of submitter (unless configured in github; will be published with the issue): Jim X
In the whole section of [basic.exec], we mix to use "executed" and "evaluated". For example, [intro.execution] p9
Every value computation and side effect associated with a full-expression is sequenced before every value computation and side effect associated with the next full-expression to be evaluated.
[intro.execution] p12
each evaluation that does not occur within F but is evaluated on the same thread
[intro.execution] p8
Sequenced before is an asymmetric, transitive, pair-wise relation between evaluations executed by a single thread
In these picked sentences, we sometimes say "an evaluation is executed", and sometimes say "an evaluation is evaluated". So, it's hard to understand the subtle difference between these two verbs.
IIUC, an evaluation is produced from an expression that is executed by a thread. So, when we mention the noun "evaluation", it implies that the expression is executed by the thread. We don't need to say an evaluation is evaluated/executed anymore, which sounds a bit redundant.
Suggested Resolution:
We should consistently use "executed" throughout the whole [basic.exec]. Both expressions and statements can be executed by a thread. When a thread executed an expression, it produced an evaluation of the expression.