March 28 meeting notes

David Herman dherman at mozilla.com
Thu Mar 29 10:16:03 PDT 2012


On Mar 29, 2012, at 6:23 AM, Domenic Denicola wrote:

> Bigger question: It sounds like TCP was sacrificed in favor of maximal minimalism, which makes sense.

No, maximal minimalism is not our universal principle for ES6. It's important for classes, for various reasons, but it's not our approach to everything. TCP was sacrificed primarily because the legacy of C causes most people to expect return, break, and continue to expect to be local to one function only, so it seems to cause tons of confusion to break this expectation.

> But, is this strawman friendly toward future TCP endeavors, perhaps in ES.next.next?

Perhaps. But I wouldn't hold my breath; I make almost no predictions that far into the future.

> For example, if `do` expressions were specced in the way discussed previously, could putting one to the right of the => result in TCP semantics?

Definitely not. The do-expressions would not magically reach outside of their function. The point of do-expressions is that they are totally compositional; they don't introduce any new implicit changes to the meaning of break/continue/return. And since => functions *will* bind return and disable break/continue, there's no way do-expressions could get around that.

Dave



More information about the es-discuss mailing list