Skip to content

Exact normative requirements for interface definitions are unclear #732

@othermaciej

Description

@othermaciej

The Streams standard doesn't use Web IDL to define APIs, unlike many other WHATWG Standards. Instead, it defines interfaces with an introduction like this:

"If one were to write the ReadableStream class in something close to the syntax of [ECMASCRIPT]"

Followed by text that's vaguely similar to ECMAScript code (but in many cases not actually syntactically valid as such).

There doesn't seem to be a definition anywhere of the processing requirements for this quasi-ECMAScript syntax. In the case of Web IDL, all details are precisely defined, including corner cases, and often subtle details have been relevant to interoperability. In theory, an overly literal-minded person could claim that the "if one were to write" sentence imposes no normative requirements at all. In practice, browsers could easily interpret quasi-ECMAScript definitions in subtly different ways that affect interop down the line.

Please either define the quasi-ECMAScript syntax and its processing requirements to a similar level as has been done for Web IDL, or switch to Web IDL instead.

Metadata

Metadata

Assignees

No one assigned

    Labels

    editorialChanges that do not affect how the standard is understood

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions