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

TC39 process: clarify two things #232

Closed
rauschma opened this Issue Dec 7, 2015 · 3 comments

Comments

Projects
None yet
2 participants
@rauschma

rauschma commented Dec 7, 2015

It’s not terribly important, but maybe you’d like to know. Two things in the TC39 process document are not 100% clear to me, as an outsider:

  • “Implementation Types Expected: Shipping”
    Does that mean: “not behind a flag”? I’d consider an experimental implementation or a spec-compliant implementation “shipping”, too.
  • “Indicate that the addition is ready for inclusion in the formal ECMAScript standard”
    Maybe it makes sense to distinguish two things: First, when will the feature be added to a draft of the language spec. Second, when will the language spec be ratified as a standard (again)? The quoted sentence seems to imply that both happen at the same time.
@bterlson

This comment has been minimized.

Show comment
Hide comment
@bterlson

bterlson Dec 7, 2015

Member

Does that mean: “not behind a flag”? I’d consider an experimental implementation or a spec-compliant implementation “shipping”, too.

It could, or could not, depending on the feature. Right now it has to be a judgement call, and I think that's ok.

Maybe it makes sense to distinguish two things: First, when will the feature be added to a draft of the language spec. Second, when will the language spec be ratified as a standard (again)? The quoted sentence seems to imply that both happen at the same time.

The draft is what is ultimately ratified into a standard, so anything below stage 4 should not be included in a draft. That said, the editor may apply some discretion here and begin integrating features with a very high likelihood to hit stage 4 to ensure that said feature makes it into a draft. You can think of GA ratification as an implicit stage 5.

tl;dr seems intentionally vague and I'm ok with that as I think we can follow the spirit of the document and don't need to endlessly debate what exactly constitutes an implementation, what shipping means, etc.

Member

bterlson commented Dec 7, 2015

Does that mean: “not behind a flag”? I’d consider an experimental implementation or a spec-compliant implementation “shipping”, too.

It could, or could not, depending on the feature. Right now it has to be a judgement call, and I think that's ok.

Maybe it makes sense to distinguish two things: First, when will the feature be added to a draft of the language spec. Second, when will the language spec be ratified as a standard (again)? The quoted sentence seems to imply that both happen at the same time.

The draft is what is ultimately ratified into a standard, so anything below stage 4 should not be included in a draft. That said, the editor may apply some discretion here and begin integrating features with a very high likelihood to hit stage 4 to ensure that said feature makes it into a draft. You can think of GA ratification as an implicit stage 5.

tl;dr seems intentionally vague and I'm ok with that as I think we can follow the spirit of the document and don't need to endlessly debate what exactly constitutes an implementation, what shipping means, etc.

@bterlson bterlson closed this Dec 7, 2015

@rauschma

This comment has been minimized.

Show comment
Hide comment
@rauschma

rauschma Dec 8, 2015

Thanks, helpful! Array.prototype.includes seems to be beyond stage 4, but isn’t included in the spec, yet.

tl;dr seems intentionally vague and I'm ok with that as I think we can follow the spirit of the document and don't need to endlessly debate what exactly constitutes an implementation, what shipping means, etc.

Agreed.

rauschma commented Dec 8, 2015

Thanks, helpful! Array.prototype.includes seems to be beyond stage 4, but isn’t included in the spec, yet.

tl;dr seems intentionally vague and I'm ok with that as I think we can follow the spirit of the document and don't need to endlessly debate what exactly constitutes an implementation, what shipping means, etc.

Agreed.

@bterlson

This comment has been minimized.

Show comment
Hide comment
@bterlson

bterlson Dec 8, 2015

Member

A.p.includes is checked in but not yet released. I'll release a draft tomorrow! (Was planning on it today but it's a hectic time for me :-P)

Member

bterlson commented Dec 8, 2015

A.p.includes is checked in but not yet released. I'll release a draft tomorrow! (Was planning on it today but it's a hectic time for me :-P)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment