Isiah,
The reason for `=` instead of the `do expression` is to write functional
code without extra syntax. I do not think there are any indistinguishable
or 'very confusing' case, though I am aware the *Object Property Shorthand`
that been introduced in ES6 might cause some problems.
Here is what I think that may resolve this problem
for your concern,
```
var b = 1
var a = b
= { c }
```
the solution is to make `Object literals` to have higher parsing priority.
if `c` is a variable, it will be parsed as `object literal`, otherwise it
is considered as scope and been parsed as expression block.
ex.
`var x = { a }` will be parsed as `var x = { a: a }`
`var x = { a() }` will be parsed as `var x = a()`, under current specs it
would be syntax error.
In this case, this proposal should not cause any confusion IMO.
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss