Intent to Ship: Object.getOwnPropertyDescriptors()

34 views
Skip to first unread message

Caitlin Potter

unread,
Jul 28, 2016, 3:03:31 PM7/28/16
to v8-users
Object.getOwnPropertyDescriptors() has been implemented in V8 since February 2016, and enabled by the "Experimental Javascript Features" flag in Chrome since March. The feature has been ratified and is in the specification at https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors.

Performance-wise, I believe we outperform user-space implementations of this function in the common cases by a factor of 2 (measured quickly/naively at https://github.com/caitp/getOwnPropertyDescriptors-bench), possibly slightly slower for more exotic uses (but this has not been tested).

The technical debt introduced by this feature is fairly limited, taking up a total of 36 lines of straightforward C++ code.

There is no chromestatus entry, but one will be created if asked for. It's been implemented for several months without one, and it seems like the feature is being found without an entry.

Adam Klein

unread,
Jul 28, 2016, 3:23:41 PM7/28/16
to v8-users
+bcc blink-dev

This lgtm to ship! A few questions/comments below.

On Thu, Jul 28, 2016 at 12:03 PM, Caitlin Potter <ca...@igalia.com> wrote:
Object.getOwnPropertyDescriptors() has been implemented in V8 since February 2016, and enabled by the "Experimental Javascript Features" flag in Chrome since March. The feature has been ratified and is in the specification at https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors.

Is it implemented or shipped in other engines?
 
Performance-wise, I believe we outperform user-space implementations of this function in the common cases by a factor of 2 (measured quickly/naively at https://github.com/caitp/getOwnPropertyDescriptors-bench), possibly slightly slower for more exotic uses (but this has not been tested).

The technical debt introduced by this feature is fairly limited, taking up a total of 36 lines of straightforward C++ code.

There is no chromestatus entry, but one will be created if asked for. It's been implemented for several months without one, and it seems like the feature is being found without an entry.

Please do add one (which will answer my question). 

--
--
v8-users mailing list
v8-u...@googlegroups.com
http://groups.google.com/group/v8-users
---
You received this message because you are subscribed to the Google Groups "v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to v8-users+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Caitlin Potter

unread,
Jul 28, 2016, 4:10:21 PM7/28/16
to v8-users
On Thursday, July 28, 2016 at 3:23:41 PM UTC-4, Adam Klein wrote:
+bcc blink-dev

This lgtm to ship! A few questions/comments below.

On Thu, Jul 28, 2016 at 12:03 PM, Caitlin Potter <ca...@igalia.com> wrote:
Object.getOwnPropertyDescriptors() has been implemented in V8 since February 2016, and enabled by the "Experimental Javascript Features" flag in Chrome since March. The feature has been ratified and is in the specification at https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors.

Is it implemented or shipped in other engines?

There are links to work on implementations at Apple, Mozilla and Microsoft in the chromestatus entry below
 
 
Performance-wise, I believe we outperform user-space implementations of this function in the common cases by a factor of 2 (measured quickly/naively at https://github.com/caitp/getOwnPropertyDescriptors-bench), possibly slightly slower for more exotic uses (but this has not been tested).

The technical debt introduced by this feature is fairly limited, taking up a total of 36 lines of straightforward C++ code.

There is no chromestatus entry, but one will be created if asked for. It's been implemented for several months without one, and it seems like the feature is being found without an entry.

Please do add one (which will answer my question). 

Reply all
Reply to author
Forward
0 new messages