Maintenance of ES3 (also see a separate section further down, from the late afternoon session)
JD: What do we do with the JScript delta document?
PL: Things in the doc: where JScript deviates, where the ES3 spec is unclear, and de-facto agreements amongst implementations. If the browsers are in de-facto agreement in the latter category we should consider these areas for bugfixes, and in any case it would be useful to tighten up the language where there’s a lot of leeway. This benefits interoperability.
DC: Pratap’s document has a major role in informing the ES3.1 work. The 3.1 proposal is not yet ready for release, however.
BE: Some of these things are good to codify, some (maybe more) are not.
DC: In particular the implementation’s ability to add arbitrary properties to any user object is a problem.
BE: Adding R/O properties in the prototype is also a problem because of [[CanPut]], and globals can be problematic.
LH: Maybe good to file specific requests for tightening as tickets in Trac?
BE: It’s time to decide whether 3.1 will happen under the auspices of TG1 or not. We have 4.0 already mapped out in terms of features and timeline, and TC39 is aware of that. We are the ones who get to decide what to do. If we don’t agree we may need a new activity in TC39.
JD: It is not clear what the purpose of 3.1 is
DC: We’re including errata and tightening things, and deprecating some things. We’ll propose it as the new 4.0. We’ll be done in the next couple of months.
BE: If we had a vote now then 3.1 would not survive, so it would be better if we could agree on how to handle this.
JD: It’s disconcerting that no draft of 3.1 has been forthcoming, we can’t schedule or decide based on nothing.
DC: You’ve seen everything we have to date. Now we have to write the spec.
PL: Most pieces for the spec are available now, ES3 spec, errata, this deviations document.
PL: Our spec is an edit of the ES3 source document itself
PL: We’d love to have similar documentation related to spec conformance from other vendors.
BE: We don’t have the time to document what we’ve done so as to achieve interoperation for the benefits of better market share, this is extremely time consuming work.
BE:
JS has better interop than
DOM and
CSS
DC: I agree,
JS may be top dog in the world on that count
BE: One thing that might be useful to adopt is the string.prototype.eval method, but we’re trying to close proposals now.
JD: How useful is it to go along for another year and then have two competing specs?
DC: Depends on how willing you are to drop stuff from your spec that we don’t need
JD: This does not seem like a productive dicussion, we’ve been here before
BE: Another thing to fix (adopt from 3.1) is automatic semicolon insertion following “return”, this is a language bug, all sorts of code wants to put the return value on the next line.
BE: I’ve been talking to ECMA about possibilities for including errata into ES3, maybe that’s the way to go
JD: Or an ECMA technical report consisting of the errata or the edited document
BE: Pratap’s document with very little changes could go as a TR
BE: A TR without trying to make a new edition would be good. It’s in everyone’s interest not to go to war or to (ab)use the standards process to force a decision in the market. It would be better to do something lightweight like a TR to revise 3rd Ed, as long as it does not compete with ES4, but ES4 will go forward.
JD: The current makeup of the group will likely endorse the ES4 work, so you must be aware of that, but nothing stops people from working on 3.1.
BE: Have you had success in enlisting other organizations in participating in the 3.1 work?
PL: Not yet.
BE: That probably reflects the realities of the marketplace, and groups joining TG1 now must first prove their worth in the peer group before being able to pull any weight. It’s unlikely that TC39 will be very happy about having two groups working on the same subject matter.
JD: The eval method on string needs to be presented as a proposal, probably.
JD: What do we do about the proposal “Maintenance of ES3”?
BE: Maybe if we could agree that conditional on agreement from ECMA about allowing something like a TR or a spec called “3.1”, and provided 3.1 is not in conflict with ES4, then TG1 could endorse the work and the 3.1 work could go on within TG1.
JD: Well it has to be a TR or an errata sheet
BE: Or something new, but not something bound for
ISO
JD: We need to either smiley-face it or axe it. We’ll do it this pm.
⇒ continues below, late afternoon same day