Jason Orendorff (2014-06-12T18:30:02.000Z)
On Thu, Jun 12, 2014 at 10:06 AM, Domenic Denicola
<domenic at domenicdenicola.com> wrote:
> I'd be most interested in seeing if we can remove IsConstructor entirely (except for uses where it's just a guard, implementing the semantics of `new` via IsConstructor -> [[Construct]] or throw).
>
> It seems like there's at least some movement toward removing it from `Array.of` and `Array.from`. All that remains is its use to preserve the `arrayInstance.constructor = undefined` backward-compatibility possibilities.

Proxies also observe it.

I *really* wish we just had an @@new for this, such that
    new C(...args)
is just shorthand for
   C[Symbol.new](...args)
and the construct trap could be removed from proxies altogether.  :-|

-j
domenic at domenicdenicola.com (2014-06-20T19:34:18.981Z)
On Thu, Jun 12, 2014 at 10:06 AM, Domenic Denicola <domenic at domenicdenicola.com> wrote:
> I'd be most interested in seeing if we can remove IsConstructor entirely (except for uses where it's just a guard, implementing the semantics of `new` via IsConstructor -> [[Construct]] or throw).
>
> It seems like there's at least some movement toward removing it from `Array.of` and `Array.from`. All that remains is its use to preserve the `arrayInstance.constructor = undefined` backward-compatibility possibilities.

Proxies also observe it.

I *really* wish we just had an @@new for this, such that

    new C(...args)

is just shorthand for

    C[Symbol.new](...args)

and the construct trap could be removed from proxies altogether.  :-|