I have been reviewing other people's code and while ES2015 on the whole is taking some getting use to, however, I keep on getting stuck with Destructuring.

Previously, In Javascript, the Curly Brackets `{}` were either used for blocks or objects. e.g.

```js
// Curly Brackets Block
If () {
  ...
}

// Curly Brackets in Obj
var obj = {
  a : 1,
  ...
}

```

However, in destructuring, we see again and again the following syntax:

```js
let a = ({ a, b }) => {
}

```

My question, is the arguments container an actual object or just a block?
Please explain whether the following be the same as the code above:

```js
let a = ( a, b ) => {
}

```

EDIT: My understanding (so far) from reading Axel Rauschmayers article on Destruturing is that we are merely mapping the props. into a new Obj always? I.e:

```js
let a = { first : a, second : b } = AnObj;
===
a.a === AnObj.first;
a.b === AnObj.second;

```

Is the above correct? Is an obj always instantiated? However, that doesn't make sense as in the above function, the object thus created for the props would be an anonymous object, right?

Many thanks,