17:46
<AryehGregor>
Is there a good way to test [[Configurable]]?
17:46
<AryehGregor>
Just delete and see if it works?
17:46
<_bga>
getOPD?
17:47
<AryehGregor>
Oh, awesome.
17:47
<AryehGregor>
Thanks!
17:48
<AryehGregor>
I guess if that returns the right thing but it doesn't behave right, that's more of an ES bug than a WebIDL bug.
18:01
<_bga>
AryehGregor http://pastie.org/2857719
18:05
<AryehGregor>
Only IE9 ever passes my new shiny assert_interface().
18:05
<AryehGregor>
Go IE.
18:06
<AryehGregor>
Gecko doesn't have Node.prototype.constructor.
18:07
<AryehGregor>
Node.prototype is enumerable and configurable in Opera, and should be neither.
18:07
<AryehGregor>
In WebKit, window.Node is not writable but is enumerable, while it should be writable but not enumerable. And String(Node) is wrong.
18:10
<Ms2ger>
AryehGregor, can you also try it on NodeList?
18:11
AryehGregor
tries
18:12
<AryehGregor>
Ms2ger, works.
18:12
<AryehGregor>
I mean, it passes everything.
18:12
<Ms2ger>
Excellent
18:54
<AryehGregor>
What's an example of a static operation that's actually used in real life? I don't find any in DOM4, and the only one I find in HTML is URL.createObjectURL.
18:59
<Ms2ger>
IDB
18:59
<Ms2ger>
Those are the only two
19:03
<AryehGregor>
jgraham, I submitted another testharness.js patch: http://www.w3.org/Bugs/Public/show_bug.cgi?id=14814
19:30
<heycam>
AryehGregor, also you can test Object.getOwnPropertyDescriptor(obj, propname).configurable
19:31
<Ms2ger>
heycam, yes, that's what _bga said
19:32
<heycam>
Ms2ger, I'd have realised that if I'd read just one line further, I suppose :)
19:32
<Ms2ger>
:)
21:37
<gsnedders>
AryehGregor: getOPD often returns bogus things for host objects in general.
21:38
<Ms2ger>
Well, then that's an excellent thing to test
21:38
<gsnedders>
A WebIDL mapping issue rather than a per-interface issue in general, though
21:38
<gsnedders>
And I'm not sure WebIDL actually requires it to be correct
21:39
<heycam>
hopefully it does
21:40
<gsnedders>
I have some draft email somewhere about things that WebIDL fails to specify.
21:40
<gsnedders>
I know what your intention is, heycam :)
21:40
<Ms2ger>
Send it, dammit :)
21:40
<heycam>
gsnedders, yes please send :)
21:43
<gsnedders>
Oh, no, it's fixed now anyway
21:44
<Ms2ger>
:)
21:46
<heycam>
yay
22:21
<annevk>
heh
22:22
<annevk>
HTML5 new featured by WSJ: http://online.wsj.com/article/SB10001424052970203537304577030033160849296.html
22:22
<Ms2ger>
"Implementations that use ECMAScript to implement the APIs defined in this specification must implement them in a manner consistent with the ECMAScript Bindings defined in the Web IDL specification"
22:22
<Ms2ger>
Does that mean C++ implementations are free to do whatever?
22:22
<annevk>
I hope so
22:23
<heycam>
"implement" there is a bit iffy
22:23
<heycam>
it's not the implementation of the DOM needing to be js
22:23
<annevk>
we should definitely not make requirements on other languages I think
22:23
<heycam>
it should be saying if the APIs are exposed to JS
22:23
<heycam>
or something
22:24
<annevk>
heycam: any chance we can get unions in?
22:24
<annevk>
heycam: if not, I think I'm just going to use them when I get back to editing DOM4
22:24
<heycam>
ha
22:24
<annevk>
heycam: much like Hixie's has been using non-existing features
22:24
<heycam>
I think they make sense
22:25
<heycam>
dunno if it is worth trying to drop all the overload stuff just in favour of unions
22:25
<Ms2ger>
Btw, cabal, please review the mouse lock spec
22:25
<heycam>
might be possible
22:25
<annevk>
Ms2ger: place a pointer in
22:25
<annevk>
though I'm going to try to sleep shortly
22:25
<Ms2ger>
http://dvcs.w3.org/hg/webevents/raw-file/default/mouse-lock.html
22:25
<annevk>
still adjusting after the flight :(
22:26
<annevk>
heycam: there's definitely some overlap
22:26
<Ms2ger>
Hmm, sleeping...
22:26
<annevk>
heycam: though the append() stuff you cannot really do with overloading because of the varargs
22:27
<annevk>
allowing append(Comment, Text) does not work with append(Comment...); append(Text...) afaict
22:28
<annevk>
via this new "Activity" feature of twitter I find out that people "favorite" tweets a lot
22:28
<heycam>
annevk, yeah that wouldn't allow append(aComment, aComment, aText, aComment)
23:16
<annevk>
so much for sleeping before midnight :)
23:17
<annevk>
http://imgur.com/K7D7Y hehe
23:17
<gsnedders>
jgraham: tokenizer.py:184(entitiesStartingWith) is a huge bottleneck in html5lib/PyPy, accounting for a 1/6th of complete.html parse-time.
23:17
<gsnedders>
Guess we should move over to using a trie.
23:17
<gsnedders>
I mean, we could cache it, but that seems hacky, and will just end up using way more memory than doing it properly.
23:19
<Philip`>
Alternatively, hardcode the entities lt/gt/amp/quot because they're a vast majority of all occurrences
23:19
<Philip`>
(and fall back to a slower search if it's none of them)
23:20
<Philip`>
(Also, look at data to verify the hypothesis that those entities are the vast majority)
23:29
<gsnedders>
Philip`: Doesn't help seeming it's scanned one-character-at-a-time
23:32
<Philip`>
See if first char is l/g/a/q; if so, see if self.stream.char() is t/t/m/u; etc; then when it falls off the fast path, send the whole list of characters to the slower lookup code
23:33
<Philip`>
Might avoid the cost of doing a load of expensive dictionary lookups (as with a trie) for the common cases
23:35
<gsnedders>
Seems to be the slowest thing in Python 2.7.2 too