Andrew Fedoniouk (2013-07-12T04:22:41.000Z)
Quite often I see  constructions like this:

foo({one:1,two:2});

so call of function with single parameter - object literal.
Idiom named "Poor man named arguments passing"

Idea is to extend existing JS/ES syntax calls to support
simple form of the call above:

foo {one:1,two:2 };

Semi-formally that syntax looks like:

function-call:
   <name-token> '(' <parameter-list> ')' // existing form
   <name-token> <object-literal> // proposal

This syntax extension will not break correct pre-ES6 code
as far as I can tell. But I am not sure about new ES6 arrivals.

In fact we can add even more generic form of function call:

foo 1,2,"three";

that is an equivalent of foo(1,2,"three");

In this case grammar may look like:

function-call:
   <name-token> '(' <parameter-list> ')' // existing form
   <name-token> <parameter-list> // proposal

Where <parameter-list> is comma ',' separated list of expressions.

Just to reduce that bracketing noise in syntax.

--
Andrew Fedoniouk.

http://terrainformatica.com
forbes at lindesay.co.uk (2013-07-12T13:50:55.124Z)
Quite often I see  constructions like this:

```js
foo({one:1,two:2});
```

so call of function with single parameter - object literal.
Idiom named "Poor man named arguments passing"

Idea is to extend existing JS/ES syntax calls to support
simple form of the call above:

```js
foo {one:1,two:2 };
```

Semi-formally that syntax looks like:

```
function-call:
   <name-token> '(' <parameter-list> ')' // existing form
   <name-token> <object-literal> // proposal
```

This syntax extension will not break correct pre-ES6 code
as far as I can tell. But I am not sure about new ES6 arrivals.

In fact we can add even more generic form of function call:

```js
foo 1,2,"three";
```

that is an equivalent of `foo(1,2,"three");`

In this case grammar may look like:

```
function-call:
   <name-token> '(' <parameter-list> ')' // existing form
   <name-token> <parameter-list> // proposal
```

Where `<parameter-list>` is comma `,` separated list of expressions.

Just to reduce that bracketing noise in syntax.