Skip to content

[basic.exec] executed vs. evaluated #871

@xmh0511

Description

@xmh0511

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions