| 00:00 | <Hixie> | 8115 tests |
| 00:00 | <gsnedders> | Last time anyone was claiming stuff about the AAA around me I didn't claim to know what it did, I just threw assertions into html5lib and ran the testsuite and said, "that appears to be true' :) |
| 00:00 | <Hixie> | yeah |
| 00:00 | <Hixie> | seems reasonable |
| 00:01 | <Hixie> | goddamnit, "<div><a><b><u><i><code><div></a>" |
| 00:01 | <gsnedders> | It amusing watching you go through this pain for a change. :) |
| 00:01 | <Hixie> | hey, i was the first one to implement this damn algorithm :-P |
| 00:01 | <Hixie> | this is my third attempt |
| 00:02 | <Hixie> | (second in a programming language, i'm counting the spec as one) |
| 00:02 | <Hixie> | one day i'll do it in a language that's actually useful to someone |
| 00:02 | <gsnedders> | XD |
| 00:02 | <zewt> | if the spec counts as an implementation, shouldn't it count towards interop |
| 00:02 | <Hixie> | ok this bug appears to be related to the bookmark thing in the AAA |
| 00:02 | <Hixie> | unfortuantely i don't actually understand the bookmark thing in the AAA |
| 00:03 | <Hixie> | i was hoping i had it right... |
| 00:03 | <gsnedders> | Thereby proving your statement about the AAA above correct. :) |
| 00:04 | <Hixie> | it's really tempting to implement the bookmark thing by literally inserting something into the array |
| 00:04 | <Hixie> | and then searching for it |
| 00:04 | <Hixie> | but that's pretty terrible |
| 00:04 | <gsnedders> | Pretty sure that's what html5lib does |
| 00:07 | <Hixie> | aha |
| 00:07 | <Hixie> | i think i got it |
| 00:08 | <Hixie> | i remove something from the list but don't fix the bookmark |
| 00:13 | <Hixie> | and now <p><b><b><b><b><p>x ! |
| 00:13 | <Hixie> | noahhhhh! |
| 00:13 | <gsnedders> | noah's ark? |
| 00:13 | <Hixie> | could have sworn i implement noah |
| 00:14 | <gsnedders> | but do you implement it correctly? |
| 00:14 | <Hixie> | i guess not... |
| 00:15 | <Hixie> | oh |
| 00:15 | <Hixie> | hahaha |
| 00:15 | <Hixie> | they were only considered matches if they had attributes |
| 00:16 | <Hixie> | holy kittens!!! |
| 00:16 | <Hixie> | 8123 tests passed |
| 00:16 | <Hixie> | that's all of them |
| 00:16 | <Hixie> | well, all except the fragment mode tests |
| 00:22 | <Hixie> | gsnedders: so, i skip 106 tests, but i do run all the tree construction ones twice, so that kind of makes up for it. total time to run all the tests in an optimised build on the machine hosting whatwg.org (a dreamhost virtual host) is: 1.5s. |
| 00:23 | <Hixie> | gsnedders: you gonna be online in a couple of hours? |
| 00:23 | <gsnedders> | Hixie: I need to sleep! |
| 00:24 | <Hixie> | gsnedders: k |
| 00:24 | <Hixie> | gsnedders: ping me tomorrow, we can go through the test fixes |
| 00:24 | <gsnedders> | Hixie: am hosting party tomorrow, starting probably around the time you get up :) |
| 00:24 | <Hixie> | k well ping me whenever |
| 00:25 | <Hixie> | d'oh |
| 00:25 | <gsnedders> | will do, or ping me w/e |
| 00:25 | <Hixie> | i tried to optimise it further and the compiler said "Fatal: Procedure too complex, it requires too many registers" |
| 00:25 | <Hixie> | (specifically, trying to inline all the stuff into the function that handles entities) |
| 00:26 | <Hixie> | guess 1.5s will have to be fast enough |
| 00:26 | <Hixie> | next thing to try is parsing the spec |
| 00:26 | <Hixie> | but i gotta go now |
| 00:37 | <jamesr_> | what language is hixie writing this parser in? |
| 00:38 | <TabAtkins> | object pascal |
| 00:39 | <gsnedders> | It's Hixie, what makes you think he'd choose something sane? |
| 00:39 | <TabAtkins> | (i think - i've said so once already, and he didn't correct me) |
| 00:39 | <gsnedders> | (you are) |
| 00:46 | <Hixie> | freepascal, technically, but yeah |
| 00:47 | <Hixie> | http://software.hixie.ch/libraries/pascal/html/src/htmlparser.pas |
| 01:03 | <Hixie> | ok so my parser parser the HTML spec source (6 megs,) and then reserialises it in the test format used by the tests, in 24 seconds |
| 01:05 | <Hixie> | (13s user+sys) |
| 01:06 | <Hixie> | gonna have to work on improving that |
| 01:06 | <gsnedders> | surprisingly large diff between real and cpu time |
| 03:20 | <Hixie> | gsnedders: it's a busy machine |
| 15:57 | <annevk> | Hixie: https://twitter.com/fvsch/status/477797954385113089 (seems easy enough) |