Skip to content

Editorial: update use of, or stop using, completion values? #1224

@domenic

Description

@domenic

tc39/ecma262#2547 has changed how completion records work. Now, if an operation is infallible, the recommended practice is have it not return a completion record. Also, everything has a header saying what it returns.

We could update to follow, similar to whatwg/html#7661 .

Or, we could try to further harmonize with the rest of the web spec ecosystem, and stop doing completion records entirely. (Except where necessary to interface with ECMAScript.) I think I'd kind of prefer that. Concretely, we'd:

  • Move away from ECMAScript abstract ops as much as possible, e.g. using the stuff introduced in Add and improve operations on BufferSources webidl#987
  • Get rid of all ? and !s for internal abstract op calls
  • Change all explicit completion processing, e.g. instead of "If result is an abrupt completion, return a promise rejected with result.[[Value]].", say "If this throws an exception, catch it and return a promise rejected with that exception."
  • Update any remaining use of ECMAScript abstract ops to appropriately use or not use ?/!

Metadata

Metadata

Assignees

No one assigned

    Labels

    editorialChanges that do not affect how the standard is understood

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions