Options:
- # Session Start: Tue Jun 02 00:00:00 2009
- # Session Ident: #whatwg
- # [00:01] * Joins: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
- # [00:05] * Quits: weinig (n=weinig@17.246.17.109)
- # [00:08] * Parts: steve__ (n=chatzill@33.43.32.207.sta.southslope.net)
- # [00:11] * Quits: annevk2 (n=annevk@5ED2D22C.cable.ziggo.nl)
- # [00:18] * Quits: Kura[gone] (n=faruk@17.226.23.52)
- # [00:26] * Quits: drostie (n=hopkins@5ED17066.cable.ziggo.nl) ("even marathon runners need to nap / i ran all the way there and then ran back / but back was gone...")
- # [00:30] <ezyang> gsnedders: (a very late response) Put it in HTMLParser. That should be the "public interface"
- # [00:31] <ezyang> gsnedders: Godawful libxml bug == "Namespace Error" when you try to set a namespaced attribute.
- # [00:32] <jwalden> so, looking at the websocket protocol, what constraints are enforced on the server regarding processing of the input? is it an error if tab-delimited "header" lines are received? what if "multi-line headers" are received? basically, websockets looks like HTTP, but at what point does accepting HTTP input that's more lax than the websocket client input constitute a violation of the protocol...
- # [00:32] <jwalden> ...requirements?
- # [00:34] <Hixie> what do you mean by "enforced"?
- # [00:34] <Hixie> the protocol spec says what you're expected to suport
- # [00:34] <Hixie> support
- # [00:34] <Hixie> as a server-side author
- # [00:35] * Joins: weinig (n=weinig@17.246.17.109)
- # [00:35] <jwalden> s/enforced/required/, then
- # [00:35] <jwalden> the client is required to follow the exact steps given in the draft
- # [00:35] <Hixie> http://tools.ietf.org/html/draft-hixie-thewebsocketprotocol-12#page-15
- # [00:36] <jwalden> the server, it seems, has latitude to accept more than that
- # [00:36] <jwalden> is the server required to accept input from a client that doesn't actually follow the strictures of the client-processing section?
- # [00:36] <jwalden> yes, I've been looking at that
- # [00:37] <ezyang> gsnedders: My idea is to implement SimpleTree and watch our performance problems melt away ^_^
- # [00:37] <Hixie> jwalden: the server doesn't have to do any error handling, if that's what you mean
- # [00:37] <jwalden> okay
- # [00:38] <jwalden> that seems...dangerous
- # [00:38] <jwalden> not in any tangible sense
- # [00:38] <Hixie> the ability to control authors is basically nil
- # [00:38] <Hixie> so getting them to implement particular error handling behavior... forget it
- # [00:38] <jwalden> but in the sense of I-can-plausibly-believe-this-will-bite-us-at-some-point
- # [00:38] <jwalden> no, this is error handling server-side
- # [00:39] <Hixie> right
- # [00:39] <Hixie> authors write the server side
- # [00:39] <jwalden> oh, there are authors on both sides
- # [00:39] <jwalden> hum, this might work then
- # [00:40] <Hixie> i could write a new section
- # [00:40] <Hixie> which is "full requirements for server-side implementors that actually follow specs"
- # [00:40] <Hixie> if you like
- # [00:40] <Hixie> might not be a bad idea
- # [00:40] <jwalden> dunno, yet
- # [00:40] <Hixie> if you do think that would be useful, send a mail to whatwg, and i'll add it
- # [00:41] <jwalden> I'm just looking at this from the POV of the Mozilla bug, in which our HTTP server is being lightly hijacked to support all this, worried about being more generous in accepting input than it should be
- # [00:41] <Hixie> is this for testing or for production?
- # [00:42] <Hixie> for regression testing, it doesn't matter what the server does, it just has to check that the client sends exactly the right bytes
- # [00:42] <jwalden> I try not to differentiate the two when I write servers (or rather, when I write the one server I've written so far)
- # [00:42] <Hixie> a regression test suite server and a production server are completely different
- # [00:42] <Hixie> you can't, e.g., use apache to do serious regression testing of client-side http behaviour
- # [00:42] <jwalden> yes, but that doesn't mean one shouldn't make an effort not to make it safe-by-default
- # [00:43] <Hixie> i don't really see how a regression-testing server framework can be unsafe -- it has to accept any input whatsoever
- # [00:43] * Joins: olliej (n=oliver@17.203.15.178)
- # [00:44] <jwalden> hm, I think we're talking about different meanings; "production" to me is use in which inputs are unconstrained, "regression-testing" in the sense of inputs are constrained but may intentionally be random junk
- # [00:44] <jwalden> constrained by whatever's in the test suite using it
- # [00:47] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [00:48] <jwalden> on an unrelated note, reading RFC-style formatting rather than whatwg-style formatting is no fun :-(
- # [00:48] <jwalden> especially since things like "find" don't work due to ASCII text-decorations
- # [00:50] <Hixie> jwalden: an "in production" server is one serving end-user traffic
- # [00:50] <jwalden> we agree on that
- # [00:50] <Hixie> jwalden: a regression testing server is one used to test another tool's implementation
- # [00:51] <jwalden> sure, just say that I like my regression testing servers to have as rigorous an implementation as a production server must have
- # [00:51] <Hixie> so an in-production server can do things like disconnect if the input is bogus
- # [00:51] <Hixie> but a regression testing server needs to report pass/fail for all inputs
- # [00:53] * Joins: nessy (n=nessy@203-166-243-94.dyn.iinet.net.au)
- # [00:58] * Quits: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
- # [01:03] <gsnedders> http://larry.masinter.net/versioning-html.html
- # [01:03] <gsnedders> (from www-tag)
- # [01:04] <ezyang> 'lo gsnedders
- # [01:04] <ezyang> Did you see my late late late msgs?
- # [01:04] <gsnedders> ezyang: yes
- # [01:05] <gsnedders> ezyang: I've fixed another test case (actually, I've fixed the test runner).
- # [01:05] <ezyang> Makes sense
- # [01:05] <ezyang> The strDom() function is hack on hack on hack
- # [01:08] <ezyang> Hixie: ping?
- # [01:13] * Joins: doublec (n=doublec@202.0.36.64)
- # [01:16] * Quits: tndH (n=Rob@james-baillie-pc083-229.student-halls.leeds.ac.uk) ("ChatZilla 0.9.84-rdmsoft [XULRunner 1.9.0.1/2008072406]")
- # [01:21] * Joins: dimich_ (n=dimich@72.14.227.1)
- # [01:24] <Hixie> ezyang: here
- # [01:25] * Quits: dglazkov (n=dglazkov@nat/google/x-aa7c1b98247e5eda) (Read error: 104 (Connection reset by peer))
- # [01:25] <ezyang> Hixie: Can you comment on what IN_FOREIGN_CONTENT is supposed to do when we are processing an HTML element as "in body", and that element wants us to change the mode?
- # [01:26] <Hixie> um
- # [01:26] <Hixie> nothing beyond what the spec says as far as i can tell
- # [01:26] <Hixie> how do you mean?
- # [01:27] <ezyang> As far as I can tell, the spec doesn't record that you were originally in "in foreign content" when it hops to another mode, so when you pop out of that, you stay in "in body", and don't go back to "in foreign content"
- # [01:27] <ezyang> I just wanted to verify that this was true before sending mail
- # [01:29] * Joins: dglazkov (n=dglazkov@nat/google/x-caec6c0046adfc08)
- # [01:30] * Joins: thomaslee__ (n=tom@203-217-75-64.dyn.iinet.net.au)
- # [01:31] * Quits: thomaslee_ (n=tom@124-168-16-185.dyn.iinet.net.au) (Read error: 101 (Network is unreachable))
- # [01:40] <theMadness> Augh, damn user agents.
- # [01:40] <theMadness> They create a plethora of <a> nodes when I wrap some block item inside an <a> tag.
- # [01:41] <theMadness> I guess I have overestimated the current support of html5.
- # [01:42] <Hixie> ezyang: minimal testcase? do you mean like <svg><table> ?
- # [01:42] * Quits: aroben|meeting (n=aroben@unaffiliated/aroben) (Read error: 104 (Connection reset by peer))
- # [01:48] * Quits: thomaslee__ (n=tom@203-217-75-64.dyn.iinet.net.au) ("Ex-Chat")
- # [01:48] * Joins: wakaba (n=wakaba@EM114-51-138-211.pool.e-mobile.ne.jp)
- # [01:49] <ezyang> <svg><foreignObject><table></table></foreignObject></svg>
- # [01:50] <ezyang> Uhh, make that <svg><foreignObject><table></table></foreignObject><g/></svg>
- # [01:51] <Hixie> ezyang: wouldn't you switch back to foreign content when you reset after the </table>?
- # [01:52] <ezyang> Possibly. Let me check that part of the spec again
- # [01:53] <ezyang> Yep, looks like it.
- # [01:55] * Quits: wakaba_ (n=wakaba@EM114-51-141-8.pool.e-mobile.ne.jp) (Read error: 60 (Operation timed out))
- # [01:57] <Hixie> anyone here understand RDF/XML?
- # [01:59] * Quits: dglazkov (n=dglazkov@nat/google/x-caec6c0046adfc08)
- # [02:01] <Dashiva> I figured RDF/XML would be mostly self-explanatory, but if you're asking that question, I guess not
- # [02:06] * Quits: olliej (n=oliver@17.203.15.178) (Read error: 104 (Connection reset by peer))
- # [02:06] * Joins: olliej (n=oliver@17.203.15.178)
- # [02:16] <ezyang> Is there any good way of just getting messages about changes to the html5lib spec that are w.r.t. tokenization/tree-building?
- # [02:16] <ezyang> erm, s/html5lib/html5/
- # [02:17] <Hixie> yeah, look for 't' in the first field
- # [02:17] <ezyang> Hm... so I still have to sign up for html5-commits, and just filter out things w/o t in the first field?
- # [02:18] <Hixie> or you can use the tracker
- # [02:18] * Joins: othermaciej (n=mjs@nat/apple/x-86001afba8a0be29)
- # [02:18] <Hixie> it has little check boxes that filter out everything else
- # [02:18] <Hixie> note that i often screw up
- # [02:18] <Hixie> so don't rely on it too much :-)
- # [02:18] <ezyang> So, "Affects Tools" is what I want?
- # [02:19] <ezyang> Man, I wish this had an RSS feed
- # [02:19] <ezyang> (and an easier way of unchecking everything)
- # [02:20] <Hixie> yeah
- # [02:20] <Hixie> you can provide patches, i believe
- # [02:21] <Hixie> the code is in code.google.com/html5
- # [02:21] <ezyang> Sweet.
- # [02:21] <ezyang> Assuming it's not too grody, I'll take a stab
- # [02:21] <ezyang> ftr, it's http://code.google.com/p/html5/
- # [02:21] <ezyang> Aw, it's still svn
- # [02:22] <ezyang> Can I get commit access?
- # [02:24] <Hixie> sure
- # [02:25] <Hixie> what's your account?
- # [02:25] <ezyang> edwardzyang@thewritingpot.com
- # [02:25] <ezyang> (same as html5lib)
- # [02:26] <Hixie> i'm not an html5lib admin :-)
- # [02:26] * Quits: ZombieLoffe (n=e@unaffiliated/zombieloffe)
- # [02:27] <Hixie> done
- # [02:27] <Hixie> don't break anything :-)
- # [02:27] <ezyang> Aye-aye, captain!
- # [02:29] * Quits: webben (n=benh@dip5-fw.corp.ukl.yahoo.com) ("Lost terminal")
- # [02:33] * Joins: hdh (n=hdh@58.187.207.6)
- # [02:36] <ezyang> Uh oh... html5 is using a svn:externals of testdata, which means it's old.
- # [02:37] <Hixie> i think most of the stuff in there is stale
- # [02:37] <ezyang> Heh.
- # [02:37] <Hixie> it's just a place for us to throw stuff related to html5
- # [02:37] <ezyang> Ok.
- # [02:37] <Hixie> if it's useful it usually moves on to live elsewhere
- # [02:43] * roc is now known as rocAFK
- # [02:46] * Quits: arun__ (n=arun@corp-241.mountainview.mozilla.com)
- # [02:46] <ezyang> Meh, after looking at the Python code I decided I don't care enough
- # [02:47] <Hixie> hah
- # [02:53] <jwalden> Hixie: seems to me that "Basic d2FsbGU6ZXZl" is missing some caps and a hyphen, no? :-)
- # [02:53] * jwalden pat-pats window.atob
- # [02:54] * jwalden runs the other authstrs through atob for entertainment
- # [02:54] <jwalden> guess that's just stylistic :-)
- # [02:55] * Joins: ojan (n=ojan@220.109.219.244)
- # [02:57] <ezyang> Hmm... should I setup some require_once's, or setup the entire HTML Purifier style autoloader shish-kebab
- # [03:12] * Joins: mgrdcm (n=mgrdcm@69.246.244.191)
- # [03:15] <ezyang> Barring any objections, I'd like to release 0.1.0.
- # [03:15] <ezyang> (of the php html5lib)
- # [03:18] <Hixie> jwalden: :-)
- # [03:24] <ezyang> Uploaded
- # [03:24] <ezyang> I can't figure out how to update the project summary
- # [03:24] * Quits: rocAFK (n=roc@222-152-170-20.jetstream.xtra.co.nz)
- # [03:29] * Quits: ojan (n=ojan@220.109.219.244) (simmons.freenode.net irc.freenode.net)
- # [03:29] * Quits: drry (n=drry@dd25.opt2.point.ne.jp) (simmons.freenode.net irc.freenode.net)
- # [03:29] * Quits: jtcranmer (n=jcranmer@ltsp1.csl.tjhsst.edu) (simmons.freenode.net irc.freenode.net)
- # [03:29] * Quits: eighty4 (n=eighty4@eighty4.se) (simmons.freenode.net irc.freenode.net)
- # [03:29] * Quits: Rik` (n=Rik@pha75-2-81-57-187-57.fbx.proxad.net) (simmons.freenode.net irc.freenode.net)
- # [03:29] * Quits: campd_ (n=dave@li5-166.members.linode.com) (simmons.freenode.net irc.freenode.net)
- # [03:30] * Quits: othermaciej (n=mjs@nat/apple/x-86001afba8a0be29) (simmons.freenode.net irc.freenode.net)
- # [03:30] * Quits: Lachy_ (n=Lachy@85.196.122.246) (simmons.freenode.net irc.freenode.net)
- # [03:30] * Quits: dave_levin (n=dave_lev@72.14.227.1) (simmons.freenode.net irc.freenode.net)
- # [03:30] * Quits: hamaji (n=i@w133104.ppp.asahi-net.or.jp) (simmons.freenode.net irc.freenode.net)
- # [03:30] * Quits: mpt (n=mpt@canonical/launchpad/mpt) (simmons.freenode.net irc.freenode.net)
- # [03:30] * Joins: campd_ (n=dave@li5-166.members.linode.com)
- # [03:30] * Joins: ojan (n=ojan@220.109.219.244)
- # [03:30] * Joins: drry (n=drry@dd25.opt2.point.ne.jp)
- # [03:30] * Joins: jtcranmer (n=jcranmer@ltsp1.csl.tjhsst.edu)
- # [03:30] * Joins: eighty4 (n=eighty4@eighty4.se)
- # [03:30] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
- # [03:30] * Joins: Rik` (n=Rik@pha75-2-81-57-187-57.fbx.proxad.net)
- # [03:31] * Joins: othermaciej (n=mjs@nat/apple/x-86001afba8a0be29)
- # [03:31] * Joins: Lachy_ (n=Lachy@85.196.122.246)
- # [03:31] * Joins: dave_levin (n=dave_lev@72.14.227.1)
- # [03:31] * Joins: hamaji (n=i@w133104.ppp.asahi-net.or.jp)
- # [03:41] * Joins: dglazkov (n=dglazkov@69.181.143.54)
- # [03:49] * Joins: dglazkov_ (n=dglazkov@72.14.224.1)
- # [03:58] * Quits: jwalden (n=waldo@corp-241.mountainview.mozilla.com) ("ChatZilla 0.9.82.1-rdmsoft [XULRunner 1.8.0.9/2006120508]")
- # [04:03] * Quits: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com) (Remote closed the connection)
- # [04:09] * Quits: dglazkov (n=dglazkov@69.181.143.54) (Read error: 110 (Connection timed out))
- # [04:21] * Quits: jruderman (n=jruderma@corp-241.mountainview.mozilla.com) ("Leaving...")
- # [04:30] * Joins: cying (n=cying@adsl-75-41-114-136.dsl.pltn13.sbcglobal.net)
- # [04:37] * Quits: KevinMarks (n=KevinMar@nat/google/x-7f507d82b80385ea) ("The computer fell asleep")
- # [04:37] * Joins: KevinMarks (n=KevinMar@nat/google/x-886c9d68376933c0)
- # [04:44] * Quits: dolske (n=dolske@firefox/developer/dolske)
- # [04:46] * Joins: roc (n=roc@222-152-170-20.jetstream.xtra.co.nz)
- # [04:50] * Joins: MikeSmith (n=MikeSmit@tea12.w3.mag.keio.ac.jp)
- # [04:53] <MikeSmith> irc.mozilla.org down?
- # [04:54] * Joins: boblet (n=boblet@p1254-ipbf304osakakita.osaka.ocn.ne.jp)
- # [04:54] <Hixie> wfm
- # [04:55] * Quits: KevinMarks (n=KevinMar@nat/google/x-886c9d68376933c0) (Read error: 110 (Connection timed out))
- # [04:57] <boblet> Hey all, I’d like to ask about the id attribute ‘opaque strings’ comment (3.3.3.1); what is meant by ‘Particular meanings should not be derived from the value of the id attribute’? Is this intended for browser makers?
- # [04:57] <Hixie> yes
- # [04:57] <Hixie> it means that id="header" doesn't mean the element is a header
- # [04:58] <Hixie> it could just as easily be a footer, or a link, or a duck
- # [04:59] <boblet> aah, that makes sense. So as authors we’d be encouraged to use meaningful names (as the class attribute spec specifically states), but that meaning shouldn’t affect how the browser treats the element with the id huh
- # [05:00] <Hixie> yeah
- # [05:00] <Hixie> if you can come up with a better way for the spec to say that, drop me a line :-)
- # [05:02] <boblet> How would this sit with eg microformats? eg if the text specifically said “User agents should not derive particular meanings from the value of the id attribute” (which would remove the ambiguity for me), wouldn’t this also be problematic for eg Operator, Optimus et al?
- # [05:03] <boblet> Hrm, perhaps adding your example “eg id="header" should not be interpreted as <header>” is clearest?
- # [05:06] <Hixie> do they use id="" attribute values?
- # [05:06] <Hixie> i'd rather not define things by examples, though i could certainly _add_ examples if you want
- # [05:07] <Hixie> drop me a mail if you do
- # [05:07] * Joins: arun__ (n=arun@67.218.104.123)
- # [05:09] <boblet> Microformats plugins/bookmarklets just look for the matching value, which could be class="vcard" or id="vcard". Using class="" is most common, but it’s possible an author might use id="". I’ll email you these comments. Thanks for the clarification
- # [05:14] <Hixie> k
- # [05:15] * Quits: roc (n=roc@222-152-170-20.jetstream.xtra.co.nz)
- # [05:17] * Joins: dolske (n=dolske@c-76-103-40-203.hsd1.ca.comcast.net)
- # [05:19] * Quits: weinig (n=weinig@17.246.17.109)
- # [05:21] <othermaciej> I think the justification I just sent for the Design Principles may be longer than the actual Design Principles
- # [05:22] <othermaciej> not sure how to feel about this
- # [05:24] * ezyang turns on obnoxious flag
- # [05:24] <ezyang> Anyone want to update the html5lib status page?
- # [05:24] * ezyang turns off obnoxious flag
- # [05:34] <othermaciej> aaaand I self-replied twice
- # [05:34] <othermaciej> should have planned more before sending
- # [05:40] * Quits: arun__ (n=arun@67.218.104.123)
- # [05:43] * Joins: othermaciej_ (n=mjs@17.246.19.241)
- # [05:44] * Quits: othermaciej_ (n=mjs@17.246.19.241) (Read error: 104 (Connection reset by peer))
- # [05:45] * Joins: othermaciej_ (n=mjs@17.246.19.241)
- # [05:45] * Quits: othermaciej (n=mjs@nat/apple/x-86001afba8a0be29) (Read error: 60 (Operation timed out))
- # [05:47] * Quits: dimich_ (n=dimich@72.14.227.1)
- # [06:07] * Quits: ojan (n=ojan@220.109.219.244)
- # [06:09] * Joins: weinig (n=weinig@c-67-180-35-124.hsd1.ca.comcast.net)
- # [06:14] * Joins: jruderman (n=jruderma@c-98-248-40-206.hsd1.ca.comcast.net)
- # [06:15] * Quits: hdh (n=hdh@58.187.207.6) (Remote closed the connection)
- # [06:16] * Joins: hdh (n=hdh@hdh-1-pt.tunnel.tserv20.hkg1.ipv6.he.net)
- # [06:35] * Quits: bzed (n=bzed@devel.recluse.de) (simmons.freenode.net irc.freenode.net)
- # [06:35] * Quits: mgrdcm (n=mgrdcm@69.246.244.191) (simmons.freenode.net irc.freenode.net)
- # [06:35] * Quits: JohnResig (n=JohnResi@ejohn.org) (simmons.freenode.net irc.freenode.net)
- # [06:36] * Joins: bzed (n=bzed@devel.recluse.de)
- # [06:37] * Quits: boblet (n=boblet@p1254-ipbf304osakakita.osaka.ocn.ne.jp)
- # [06:40] * Joins: JohnResig (n=JohnResi@121.255.201.74.static.ey03.engineyard.com)
- # [06:41] * Quits: JohnResig (n=JohnResi@121.255.201.74.static.ey03.engineyard.com) (Killed by reynolds.freenode.net (Nick collision))
- # [06:41] * Joins: mgrdcm (n=mgrdcm@69.246.244.191)
- # [06:41] * Joins: JohnResig (n=JohnResi@ejohn.org)
- # [06:41] * Joins: JohnResi1 (n=JohnResi@121.255.201.74.static.ey03.engineyard.com)
- # [06:41] * Quits: JohnResig (n=JohnResi@ejohn.org) (Read error: 104 (Connection reset by peer))
- # [06:49] * Joins: boblet (n=boblet@p1254-ipbf304osakakita.osaka.ocn.ne.jp)
- # [06:52] * Joins: roc (n=roc@121-72-202-1.dsl.telstraclear.net)
- # [06:54] * Quits: doublec (n=doublec@202.0.36.64) ("Leaving")
- # [06:57] * Joins: dglazkov (n=dglazkov@69.181.143.54)
- # [07:04] * Joins: ojan (n=ojan@220.109.219.244)
- # [07:10] * Quits: dglazkov_ (n=dglazkov@72.14.224.1) (Read error: 104 (Connection reset by peer))
- # [07:18] * Parts: boblet (n=boblet@p1254-ipbf304osakakita.osaka.ocn.ne.jp)
- # [07:25] * Quits: dglazkov (n=dglazkov@69.181.143.54)
- # [07:37] <Hixie> othermaciej_: you should just put your e-mail into the design principles
- # [07:38] <othermaciej_> all of it?
- # [07:38] * othermaciej_ is now known as othermaciej
- # [07:38] <Hixie> more or less
- # [07:38] <Hixie> i mean it'll need editing
- # [07:38] <othermaciej> yeah
- # [07:38] <Hixie> but it would give the context people are asking for
- # [07:38] <Hixie> even if they don't agree with it
- # [07:38] <othermaciej> obviously the part where I say which principles are better or worse shouldn't be pasted in
- # [07:38] <Hixie> sure
- # [07:38] <Hixie> i'd just drop the ones that didn't work
- # [07:39] <Hixie> or fix them so they can
- # [07:39] <othermaciej> sections 1 and 2 seem like the best fits
- # [07:39] <othermaciej> though they are awfully long
- # [07:40] <othermaciej> anyway, I guess that seems like a good idea
- # [07:40] <othermaciej> or at the very least I could write an introductory section that addresses the same points
- # [07:42] <othermaciej> by the way, the prediction that "you can't please everyone" would draw objections was fulfilled
- # [07:42] <othermaciej> though I was surprised that the objection came from Sam
- # [07:49] * Quits: othermaciej (n=mjs@17.246.19.241)
- # [07:51] * Joins: wakaba_ (n=wakaba@EM114-51-31-251.pool.e-mobile.ne.jp)
- # [07:53] * Joins: othermaciej (n=mjs@17.246.19.241)
- # [07:53] * Quits: othermaciej (n=mjs@17.246.19.241) (Remote closed the connection)
- # [08:00] * Joins: olliej_ (n=oliver@17.246.16.186)
- # [08:01] * Joins: olliej__ (n=oliver@17.203.15.178)
- # [08:01] * Quits: olliej (n=oliver@17.203.15.178) (Read error: 54 (Connection reset by peer))
- # [08:05] * weinig is now known as weinig|zZz
- # [08:07] * Quits: olliej_ (n=oliver@17.246.16.186) (Read error: 60 (Operation timed out))
- # [08:08] * Quits: wakaba (n=wakaba@EM114-51-138-211.pool.e-mobile.ne.jp) (Read error: 110 (Connection timed out))
- # [08:09] * Joins: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de)
- # [08:13] * Joins: dave_levin_ (n=dave_lev@72.14.224.1)
- # [08:20] * Joins: wakaba (n=wakaba@EM114-51-158-88.pool.e-mobile.ne.jp)
- # [08:27] * Joins: tndH (n=Rob@james-baillie-pc083-229.student-halls.leeds.ac.uk)
- # [08:28] * Joins: Mrmil (n=ut_ollie@host-77-236-204-8.blue4.cz)
- # [08:28] * Parts: Mrmil (n=ut_ollie@host-77-236-204-8.blue4.cz)
- # [08:31] * Quits: dave_levin (n=dave_lev@72.14.227.1)
- # [08:32] * Joins: ap (n=ap@194.154.88.38)
- # [08:34] * Joins: jwalden (n=waldo@c-98-248-40-206.hsd1.ca.comcast.net)
- # [08:38] * dave_levin_ is now known as dave_levin
- # [08:39] * Joins: Maurice (n=ano@a80-101-46-164.adsl.xs4all.nl)
- # [08:40] * Quits: wakaba_ (n=wakaba@EM114-51-31-251.pool.e-mobile.ne.jp) (Read error: 110 (Connection timed out))
- # [08:42] * Joins: Mrmil (n=ut_ollie@host-77-236-204-8.blue4.cz)
- # [08:45] <heycam> if i read the spec correctly, the load event dispatched once a document is loaded does not bubble. (same for most (all?) other "fire a simple event" things.)
- # [08:45] <hsivonen> the HTML5 version indictor is charset=utf-8, mmkay?
- # [08:47] <heycam> but event handler attributes (including onload="") are listeners for bubbling
- # [08:47] <heycam> unless: bubbling listeners get AT_TARGET phase events, and events that don't bubble are still dispatched AT_TARGET
- # [08:47] <heycam> which i think is true
- # [08:48] <heycam> so never mind
- # [08:50] * Quits: olliej__ (n=oliver@17.203.15.178)
- # [08:55] * Joins: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
- # [09:00] <othermaciej> seems so quiet here tonight
- # [09:08] <hsivonen> could a html5lib admin add my hsivonen@iki.fi account to the project in addition to or in place of the @gmail.com account?
- # [09:11] * Joins: pesla (n=retep@procurios.xs4all.nl)
- # [09:11] * Quits: expensivelesbian (n=expensiv@78-86-157-220.zone2.bethere.co.uk) ("Leaving.")
- # [09:12] * Joins: annevk2 (n=annevk@5ED2D22C.cable.ziggo.nl)
- # [09:18] * Joins: pauld (n=pauld@92.40.18.58.sub.mbb.three.co.uk)
- # [09:20] * Joins: pauld_ (n=pauld@92.40.31.247.sub.mbb.three.co.uk)
- # [09:24] <annevk42> heycam, that's true
- # [09:25] <annevk42> hsivonen, done
- # [09:25] <hsivonen> annevk42: thank you
- # [09:28] * Joins: pauld__ (n=pauld@94.197.228.213.threembb.co.uk)
- # [09:30] <hsivonen> $ hg outgoingabort: Python support for SSL and HTTPS is not installed
- # [09:30] <hsivonen> what macports incantation do I need?
- # [09:32] <hsivonen> how do I make hg tell me which python interpreter it is using?
- # [09:33] <Hixie> use lsof :-)
- # [09:35] * Joins: KevinMarks (n=KevinMar@c-67-164-14-96.hsd1.ca.comcast.net)
- # [09:37] * Joins: pauld___ (n=pauld@92.40.36.251.sub.mbb.three.co.uk)
- # [09:37] <hsivonen> is there a way to leave lsof waiting so that I can first start lsof and then start hg?
- # [09:41] <jgraham> hsivonen: Does less `which hg` followed by reading the line at the top not answer your question?
- # [09:42] <hsivonen> jgraham: yes. thanks
- # [09:42] <hsivonen> for the log: the incantation is sudo port install py25-socket-ssl
- # [09:43] <hsivonen> but now I get a 404 for hg outgoing
- # [09:43] <hsivonen> hg outgoing https://hsivonen@iki.fi@html5lib.googlecode.com/hg/abort: HTTP Error 404: Not Found
- # [09:44] * hsivonen wonders if Google's hg support has a bug with non-Gmail accounts
- # [09:44] <hsivonen> with the two @ signs
- # [09:44] * Quits: pauld (n=pauld@92.40.18.58.sub.mbb.three.co.uk) (Read error: 110 (Connection timed out))
- # [09:45] * Joins: zcorpan (n=zcorpan@c83-252-196-43.bredband.comhem.se)
- # [09:45] <zcorpan> Hixie: "CSS properties respectively" is marked up as a dfn
- # [09:45] <jgraham> hsivonen: s/@/%40/
- # [09:45] <jgraham> hsivonen: They do have a bug
- # [09:45] <hsivonen> jgraham: thanks
- # [09:46] * Quits: pauld_ (n=pauld@92.40.31.247.sub.mbb.three.co.uk) (Success)
- # [09:46] <jgraham> (only the first @)
- # [09:46] <Hixie> zcorpan: thanks
- # [09:47] <hsivonen> jgraham: how should I escape % in hgrc? Python interprets % as something magic
- # [09:47] <hsivonen> %%?
- # [09:47] * Quits: pauld__ (n=pauld@94.197.228.213.threembb.co.uk) (Read error: 60 (Operation timed out))
- # [09:47] <hsivonen> yes, %%
- # [09:48] <hsivonen> yay for overlapping escapes
- # [09:50] * Joins: olliej (n=oliver@17.246.16.186)
- # [09:56] * Joins: ZombieLoffe (n=e@unaffiliated/zombieloffe)
- # [09:57] <Hixie> holy crap, shelley managed to write an entire blog post about html5 without saying i was wrong about anything
- # [09:57] <othermaciej> no wai
- # [09:58] <Hixie> i really don't understand why people have so much trouble with the design principles
- # [09:58] * Quits: hdh (n=hdh@hdh-1-pt.tunnel.tserv20.hkg1.ipv6.he.net) (Read error: 54 (Connection reset by peer))
- # [09:58] <Hixie> are people really that desperate for black-and-white rules?
- # [09:58] <Hixie> language design isn't something you do by following a flowchart
- # [09:58] <Hixie> you have to weigh all the various goals, etc
- # [09:59] <othermaciej> haha, she hates the Design Principles because they are against RDFa
- # [09:59] <Hixie> i just don't get why every time we find the need to create new technologies, someone says "you're ignoring the don't reinvent the wheel principle", especially when we documented why we were doing so for that feature
- # [10:00] <Hixie> or why every time any one principle is overriden by some other concern, people assume that means we should always ignore that principle
- # [10:00] * Quits: pauld___ (n=pauld@92.40.36.251.sub.mbb.three.co.uk) (Read error: 110 (Connection timed out))
- # [10:00] <Hixie> e.g. i mention that the design principles are merely guidelines, and shelley's response is to tell hsivonen that he's wrong about caring about dom consistency
- # [10:00] <Hixie> but that's just stupid
- # [10:00] <Hixie> because you have to care about dom consistency
- # [10:01] <Hixie> just like you have to care about everything else
- # [10:01] <Hixie> why do these people find this so challenging to grasp?
- # [10:01] * Joins: hdh (n=hdh@2001:470:18:88:0:0:0:2)
- # [10:02] <othermaciej> I am not sure
- # [10:03] * Joins: virtuelv (n=virtuelv@pat-tdc.opera.com)
- # [10:04] <ojan> where is this thread going on?
- # [10:05] <othermaciej> I don't know how to explain it any further without getting repetitive
- # [10:05] <othermaciej> but yeah
- # [10:05] <Hixie> ojan: public-html is where most of it is, shelley's blog was what most recently triggered by confusion though
- # [10:05] <othermaciej> there could be valid reasons to override the DOM Consistency principle
- # [10:06] <Hixie> sure
- # [10:06] <Hixie> just look at the xml:lang disaster
- # [10:06] <othermaciej> for example, the need to Support Existing Content leads to some differences already
- # [10:06] <Hixie> we had to override it for that
- # [10:06] <othermaciej> right, like xml:lang vs lang
- # [10:06] <Hixie> xml:lang is the main reason we HAVE the principle, in fact :-P
- # [10:06] <Hixie> so we never have to repeat that disaster
- # [10:06] <zcorpan> would be nice to drop xml:lang and make lang equivalent to xml:lang for all elements
- # [10:07] <zcorpan> likewise with id
- # [10:07] <othermaciej> but just because you feel like it is not a good reason to override it
- # [10:07] <Hixie> holy crap! windows 7 just launched in a vm in the background and played its startup sound at full volume in stereo, sounded like a spaceship had landed in my hall or something!
- # [10:07] <othermaciej> and I would even say your counter-argument doesn't have to be based on any Design Principle
- # [10:07] <othermaciej> but you have more odds of being convincing if it is
- # [10:07] * Philip` tried to explain HTML5's lang vs xml:lang rules to someone implementing an RDFa parser, and they didn't seem to entirely think it was a lovely elegant idea
- # [10:08] <Hixie> well people have clearly failed to notice that i never refer to the design principles explicitly
- # [10:08] <Hixie> and that i've been applying them completely independent of whether we have the design principles doc or not
- # [10:08] <Philip`> (I think the spec is probably less confusing now than it was a few days ago, though)
- # [10:09] <Hixie> the spec doesn't mention the string "xml:lang" any more (with a couple of exceptions)
- # [10:09] <Hixie> which might make it clearer
- # [10:09] <othermaciej> I think the Design Principles are more useful for those who disagree with the direction of the spec than those who largely agree
- # [10:10] <zcorpan> Hixie: i guess now you can remove the part in terminology starting "When an XML name, such as an attribute or element name, is referred to in the form prefix:localName"
- # [10:10] * Quits: MikeSmith (n=MikeSmit@tea12.w3.mag.keio.ac.jp) ("Tomorrow to fresh woods, and pastures new.")
- # [10:10] <Hixie> zcorpan: really? there's none left?
- # [10:10] <Hixie> othermaciej: yeah, but i don't think they see it that way :-)
- # [10:10] <zcorpan> Hixie: i think xml:lang was all there ever was (ignoring examples in that section) but i might be wrong
- # [10:11] <Hixie> i'm sure there are others
- # [10:11] <zcorpan> xml:base maybe
- # [10:14] <zcorpan> "Similarly, if the newly created element has an xmlns:xlink attribute in the XMLNS namespace whose value is not the XLink Namespace, that is a parse error."
- # [10:14] <zcorpan> is "xmlns:xlink" the local name or qualified name?
- # [10:14] <Hixie> qalified
- # [10:15] <Hixie> qualified, even
- # [10:15] <Hixie> it gets complicated with xmlns: attributes
- # [10:15] <Hixie> e.g. xmlns="" is in the XMLNS namespace iirc
- # [10:15] <annevk42> yes it is
- # [10:15] <hsivonen> Hixie: WCAG, unlike design principles, have litigable precision for exceptions
- # [10:16] <hsivonen> WCAG 2.0 that is
- # [10:16] <Hixie> WCAG 2.0 has precision?
- # [10:16] <Hixie> of any kind?
- # [10:16] <hsivonen> except where WCAG is incomprehensible without informative supporting materials
- # [10:16] <Hixie> good to know
- # [10:16] <annevk42> you can make things somewhat confusing too
- # [10:16] <annevk42> data:text/xml,<test x:xmlns="x" xmlns:x="x"/>
- # [10:16] <Hixie> that's only confusing because the order of the attributes is backwards :-P
- # [10:17] <zcorpan> "PS: Interestingly, this behavior could be used to send xhtml (and get it shown on IE) without sending different headers to each browser: Content-Type: text/html Content-Type: application/xhtml+xml"
- # [10:17] <zcorpan> why hasn't anyone thought of that before?
- # [10:18] <annevk42> violates HTTP?
- # [10:18] <Philip`> Because it's insane?
- # [10:18] <Hixie> does apache even let you do that?
- # [10:18] <othermaciej> I was thinking if there continues to be debate on whether the principles should be absolute, I could cite some examples from other domains
- # [10:18] <zcorpan> the PHP content negotiation scripts also violate HTTP and are insane
- # [10:18] <hsivonen> zcorpan: I see a new meme for all the cool people coming up
- # [10:18] <Philip`> and perhaps unlikely to survive proxies
- # [10:18] <othermaciej> Math: Every natural number is either prime or composite - except 1.
- # [10:19] <zcorpan> Hixie: i guess not in a simple way
- # [10:19] <othermaciej> Perl: There's more than one way to do it. -- but sometimes there is only one way, does this undermine the very foundations of Perl?
- # [10:19] <Hixie> when is there only one way?!
- # [10:19] <Hixie> that i want to see
- # [10:19] <othermaciej> Python: none of the principles are absolute, all are extremely vague: http://www.python.org/dev/peps/pep-0020/
- # [10:20] <othermaciej> Hixie: I guess it would depend on what the definition of "one" is
- # [10:20] <Philip`> If there's one way to do it, call that way X; then you can do eval("X") and now there's two ways to do it
- # [10:20] <Hixie> even by a reasonable definition such that Philip`'s two things are considered the same
- # [10:20] <othermaciej> I think there's only one way to add two numbers, short of adding no-op layers of wrapping
- # [10:20] <jgraham> I think the difference between the python "design principles" and the HTML ones is rather telling
- # [10:20] <Hixie> adding two numbers... hmm
- # [10:20] <philipj> Hixie, where do keep that list of mails you have on your backlog where one can vote for important issues (but doesn't)? Google fails me.
- # [10:21] <Philip`> You can add two numbers with a lookup table
- # [10:21] <Hixie> philipj: whatwg.org/issues
- # [10:21] <othermaciej> jgraham: telling in what way?
- # [10:21] <philipj> thanks
- # [10:21] <Hixie> philipj: but if you have a specific request, just let me know :-)
- # [10:21] <Hixie> philipj: it'll be quicker for you :-)
- # [10:21] <othermaciej> jgraham: I wish we had enough community consensus that our design principles could be one-liners
- # [10:21] <philipj> just wondering if you forgot about the media resource selection algorithm feedback
- # [10:21] <othermaciej> but with a higher level of dissent, it's more useful to add some explanation
- # [10:22] <jgraham> othermaciej: e.g. the line "Although that way may not be obvious at first unless you're Dutch.
- # [10:22] * Joins: webben (n=benh@nat/yahoo/x-7bc2749f78c5d366)
- # [10:22] <Hixie> philipj: "In the search loop, step 6 can never be reached because step 5 either goes to 1 or aborts the task. Simply removing "Otherwise, abort the task." should
- # [10:22] <Hixie> do the trick."
- # [10:22] <Hixie> philipj: ?
- # [10:22] <Hixie> philipj: or something else?
- # [10:22] <hsivonen> Hixie: example of WCAG 2.0 precision: zooming has a precise percent requirement: 200%
- # [10:22] <othermaciej> jgraham: you mean the fact that readers are expected to have a sense of humor?
- # [10:23] <philipj> not only that, but the part about async/sync inconsistencies with when src attr or <source> element is selected
- # [10:23] <annevk42> "Although that way may not be obvious at first unless you're Dutch."
- # [10:23] <hsivonen> Hixie: example of WCAG 2.0 imprecision: you can't tell without supporting materials if browser-native zoom satisfies the req
- # [10:23] <annevk42> Python is nice
- # [10:23] <Hixie> philipj: i thought i fixed that
- # [10:23] <philipj> let me have a look
- # [10:23] * Joins: pauld (n=pauld@194.102.13.2)
- # [10:23] * Quits: olliej (n=oliver@17.246.16.186)
- # [10:23] <Hixie> philipj: oh you mean src vs <source>
- # [10:23] <Hixie> philipj: i don't know of a way to fix that
- # [10:23] <othermaciej> annevk2: do you find it obvious?
- # [10:24] <Hixie> philipj: i have an e-mail from you starting "This is an improvement in predictability"
- # [10:24] <philipj> Hixie, is there a problem with the solution I suggested?
- # [10:24] <jgraham> othermaciej: The fact the community accepts humour and the fact that one of the design principles points out that perfect design is ulikely to happen
- # [10:24] <hsivonen> Hixie: my favorite is "Interruptions can be postponed or suppressed by the user, except interruptions involving an emergency."
- # [10:24] <annevk42> That I always make the right design decisions when writing Python because I'm Dutch seems very obvious and logical to me :)
- # [10:24] <othermaciej> heh
- # [10:25] <Hixie> philipj: i guess it might work, i'll have to look closer
- # [10:26] <philipj> I've implemented basically by ignoring step 5 "let src equal the first value that was assigned" and some minor changes
- # [10:26] <Hixie> philipj: k. i expect we can make that work. i'll get to it probably before the end of the month (unless you need the spec updated before then)
- # [10:27] <philipj> well as I said it's all in my mail, I just wanted to check if you had it in your backlog
- # [10:27] <philipj> there's no big rush as far as I'm concerned
- # [10:27] * Quits: archtech (n=stanv@83.228.56.37)
- # [10:28] <Hixie> othermaciej: lol "Namespaces are one honking great idea -- let's do more of those!"
- # [10:28] <Hixie> philipj: yup, definitely got it
- # [10:29] * Quits: cying (n=cying@adsl-75-41-114-136.dsl.pltn13.sbcglobal.net)
- # [10:29] <othermaciej> Hixie: not applicable in our context!
- # [10:31] <jgraham> With that exception (and a few others), I actually think that a lot of the Python design principles are things that we should be striving for
- # [10:33] <annevk42> just due to sheer complexity of the Web platform we sort of fail on "If the implementation is hard to explain, it's a bad idea."
- # [10:33] <jgraham> annevk42: But we should aim for that in new features
- # [10:33] <jgraham> At least at a high level
- # [10:34] <jgraham> I mean details of web security and so on will always be hard to explain so the details of new features will never be obvious
- # [10:34] * Philip` wonders if there is a principle like "ignore principles that seem inconveniently contrary to our view of the world (e.g. ones that promote namespaces)"
- # [10:35] <annevk42> Philip`, I guess that principle is that not all programming principles apply to those of markup languages
- # [10:36] <Philip`> How does one decide which ones do apply?
- # [10:37] <jgraham> Philip`: Given an arbitary set of possibe principles?
- # [10:38] <jgraham> The ones that make sense based on experience, etc. If you get it wrong then it just means that the result will likely be bad
- # [10:38] <annevk42> Philip`, somewhat informed judgment?
- # [10:38] <othermaciej> jgraham: many of the new features fail
- # [10:38] <othermaciej> jgraham: for instance Workers - no way any implementation is going to be easy to explain
- # [10:39] <othermaciej> but hopefully the *interface* can remain easy to explain
- # [10:40] <annevk42> the difference is that Python is just a programming language, not so much an API to all kinds of features
- # [10:40] <Philip`> It's an API to an interpreter
- # [10:41] <annevk42> (and Python is also going to violate that principle once they get further with JIT'ing)
- # [10:41] <jgraham> othermaciej: Possibly that means that workers is too complex. Possibly it just means that the complexity is inevitable if you want that feature.
- # [10:41] <jgraham> But if we had a principle like that we would at least look to minimise internal complexity whereever possible
- # [10:41] <jgraham> (DOM consistency is rather similar)
- # [10:42] <jgraham> (but obviously more specific)
- # [10:42] <Hixie> i wonder if julian realises that complaining that i haven't replied to his e-mail is delaying my replying to his e-mail because i end up reading and responding to his e-mails complaining about it...
- # [10:44] * Joins: ROBOd (n=robod@89.122.216.38)
- # [10:46] <othermaciej> jgraham: I think there is inherent implementation to concurrency
- # [10:47] <othermaciej> but also, the message-passing model should have the least implementation complexity of various concurrency models
- # [10:48] <othermaciej> however I think Workers / MessagePorts may have more complexity than expected, as we are learning in the course of implementing in WebKit
- # [10:48] * Quits: hdh (n=hdh@2001:470:18:88:0:0:0:2) (Remote closed the connection)
- # [10:48] * Joins: hdh (n=hdh@58.187.207.6)
- # [10:48] <othermaciej> jgraham: there is Avoid Needless Complexity
- # [10:49] <othermaciej> jgraham: but in general, I think it's more important to avoid interface complexity than implementation complexity
- # [10:49] <Hixie> i should go to bed
- # [10:49] <othermaciej> unless the implementation complexity required is truly excessive, and beyond what is reasonable for the feature in question
- # [10:51] <hsivonen> I should try to invoke Avoid Needless Complexity and Solve Real Problems against table taint
- # [10:52] <hsivonen> having a writable datum in stack nodes means speculative parsing needs to copy the nodes instead of holding references to the nodes from different speculations
- # [10:53] <hsivonen> woohoo! <datagrid> content model got sane
- # [10:53] <zcorpan> hsivonen: hmm i can't reopen your bug, but now it has more info
- # [10:54] <hsivonen> zcorpan: which bug?
- # [10:54] <zcorpan> http://www.w3.org/Bugs/Public/show_bug.cgi?id=6978
- # [10:55] <zcorpan> maybe it should be a per-document flag so that when it gets set, all further </script> tags are omitted in the serialization
- # [10:56] <zcorpan> but you could still make it run by inserting <style></script></style>
- # [10:56] <zcorpan> so not worth it i guess
- # [10:56] <zcorpan> maybe the whole script should be omitted instead
- # [10:57] * Quits: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de) (simmons.freenode.net irc.freenode.net)
- # [10:57] * Quits: mgrdcm (n=mgrdcm@69.246.244.191) (simmons.freenode.net irc.freenode.net)
- # [10:57] <zcorpan> i.e. instead of serializing <script>contents, serialize <script></script> (or nothing)
- # [10:57] <zcorpan> i guess nothing is better considering <script src>
- # [10:58] * Joins: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de)
- # [10:58] * Joins: mgrdcm (n=mgrdcm@69.246.244.191)
- # [10:58] <zcorpan> maybe script elements shouldn't be inserted in the dom until the end tag is seen?
- # [10:58] <zcorpan> during parsing
- # [11:00] <hsivonen> zcorpan: Deferring insertion would be annoying
- # [11:00] <zcorpan> yeah
- # [11:02] <Hixie> what is this solving, anyway
- # [11:04] <zcorpan> does IE do it?
- # [11:04] * Joins: mat_t (n=mattomas@nat/canonical/x-8b8ab794049e23bc)
- # [11:07] <zcorpan> nope
- # [11:07] <zcorpan> that opera does it might be a side-effect of wanting to be ie-compatible
- # [11:08] <zcorpan> though we emit more tags than ie does at the moment
- # [11:09] <Hixie> ok well i'm going to bed.
- # [11:09] <Hixie> nn.
- # [11:16] <hsivonen> Hixie: nn
- # [11:16] <othermaciej> gnight Hixie
- # [11:29] * annevk42 thought Hixie was going to bed
- # [11:29] <annevk42> LIES!
- # [11:31] * othermaciej wonders if chaals will eventually conclude that he's not saving any time by repeatedly making his same argument that getting rid of the design principles would save time
- # [11:32] <annevk42> time will tell -- harharhar
- # [11:43] <othermaciej> did my explanation/justification of the document make sense btw?
- # [11:43] <othermaciej> I know it ended up a bit close to TL;DR territory
- # [11:48] <annevk42> ok, let that be the last thing I read before I start packing for the CSS meeting
- # [11:48] * annevk42 has a flight in 3 hours
- # [11:52] <othermaciej> ah, wouldn't want to miss that
- # [11:53] * Quits: dave_levin (n=dave_lev@72.14.224.1)
- # [11:53] <zcorpan> Hixie: <a href="©="> is equivalent to <a href="©=">
- # [11:54] <annevk42> othermaciej, looks good
- # [11:54] <annevk42> othermaciej, I agree with Hixie that some of that should probably go into the introduction
- # [11:54] <othermaciej> annevk42: yeah, that suggestion made sense to me
- # [11:54] <annevk42> othermaciej, I also I agree with removing and adding principles as suggested in the end
- # [11:54] <othermaciej> annevk42: I will see what happens in the email discussion for a day or two before I do that
- # [11:55] <othermaciej> (either of those things)
- # [11:55] <annevk42> cool
- # [12:08] * Quits: hdh (n=hdh@58.187.207.6) (Remote closed the connection)
- # [12:23] * Quits: ojan (n=ojan@220.109.219.244)
- # [12:25] * Quits: pauld (n=pauld@194.102.13.2)
- # [12:28] * Joins: pauld (n=pauld@194.102.13.2)
- # [12:31] * Quits: pauld (n=pauld@194.102.13.2) (Client Quit)
- # [12:32] * Quits: Lachy (n=Lachy@pat-tdc.opera.com) ("Leaving")
- # [12:38] * Joins: ciaran_lee (n=ciaran_l@83-70-243-34-dynamic.b-ras1.prp.dublin.eircom.net)
- # [12:47] * Joins: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com)
- # [12:48] * Quits: mat_t (n=mattomas@nat/canonical/x-8b8ab794049e23bc) ("This computer has gone to sleep")
- # [12:49] * Joins: mat_t (n=mattomas@91.189.88.12)
- # [12:54] * Parts: annevk42 (n=annevk@5ED2D22C.cable.ziggo.nl)
- # [12:56] * Quits: mat_t (n=mattomas@91.189.88.12) ("This computer has gone to sleep")
- # [12:57] * Joins: mat_t (n=mattomas@nat/canonical/x-6a3a5323ae4d0d81)
- # [13:03] * Joins: pauld (n=pauld@194.102.13.2)
- # [13:03] * Quits: annevk2 (n=annevk@5ED2D22C.cable.ziggo.nl)
- # [13:06] * Quits: karlcow (n=karl@nerval.la-grange.net) ("This computer has gone to sleep")
- # [13:11] * Joins: harig (n=opera@59.90.71.35)
- # [13:15] * Joins: ciaran_lee_ (n=ciaran_l@83-70-243-34-dynamic.b-ras1.prp.dublin.eircom.net)
- # [13:15] * Joins: Lachy (n=Lachy@pat-tdc.opera.com)
- # [13:18] <zcorpan> my browsers have less spacing for <isindex> than what the spec gives (with implying <p>)
- # [13:20] * Quits: ciaran_lee (n=ciaran_l@83-70-243-34-dynamic.b-ras1.prp.dublin.eircom.net) (Read error: 60 (Operation timed out))
- # [13:24] <zcorpan> <isindex type=checkbox>
- # [13:29] <zcorpan> the spec matches ie at least
- # [13:30] <zcorpan> except for the p and the label
- # [13:33] <Mrmil> mmm coffee...
- # [13:34] * Parts: zcorpan (n=zcorpan@c83-252-196-43.bredband.comhem.se)
- # [13:34] * Joins: zcorpan (n=zcorpan@c83-252-196-43.bredband.comhem.se)
- # [13:38] * Quits: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com)
- # [13:39] * Joins: myakura (n=myakura@p4050-ipbf3009marunouchi.tokyo.ocn.ne.jp)
- # [13:39] * Joins: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com)
- # [13:58] * Quits: pauld (n=pauld@194.102.13.2) (Read error: 104 (Connection reset by peer))
- # [13:58] * Joins: pauld (n=pauld@194.102.13.2)
- # [13:59] * ap is now known as ap|away
- # [13:59] <gsnedders> ezyang: http://stuff.gsnedders.com/phphtml5lib/
- # [14:01] * Quits: webben (n=benh@nat/yahoo/x-7bc2749f78c5d366) (Read error: 110 (Connection timed out))
- # [14:01] * Quits: pauld (n=pauld@194.102.13.2) (Read error: 104 (Connection reset by peer))
- # [14:01] * Joins: pauld (n=pauld@194.102.13.2)
- # [14:13] * Joins: webben (n=benh@nat/yahoo/x-d6c214ec3df03d2f)
- # [14:18] * Joins: pmuellr (n=pmuellr@nat/ibm/x-38fb5dbe8394eb50)
- # [14:20] * Joins: MikeSmith (n=MikeSmit@EM114-48-230-10.pool.e-mobile.ne.jp)
- # [14:20] * Quits: wakaba (n=wakaba@EM114-51-158-88.pool.e-mobile.ne.jp) (Read error: 104 (Connection reset by peer))
- # [14:24] * Joins: wakaba (n=wakaba@EM114-51-60-85.pool.e-mobile.ne.jp)
- # [14:25] * Joins: annevk2 (n=annevk@77.241.230.242)
- # [14:30] <Philip`> gsnedders: Why JPEG?
- # [14:32] <Philip`> Also, how did it spend 101.70% of its time inside {main}?
- # [14:33] * Parts: harig (n=opera@59.90.71.35)
- # [14:39] * Quits: annevk2 (n=annevk@77.241.230.242)
- # [14:39] <gsnedders> Philip`: Because it's sanely small :P
- # [14:39] <gsnedders> Philip`: Because it's not 100% reliable :P
- # [14:41] * Joins: harig (n=opera@59.90.71.35)
- # [14:43] * Joins: hdh (n=hdh@hdh-1-pt.tunnel.tserv20.hkg1.ipv6.he.net)
- # [14:48] <zcorpan> is it 101.70% reliable?
- # [14:48] <gsnedders> zcorpan: Totally.
- # [14:52] * Quits: philipj (n=philipj@88.131.66.80) (Read error: 110 (Connection timed out))
- # [14:52] <Dashiva> Well, ponder that statement. Is something that is 101.70% reliable a) more than 100% reliable, b) the same as 100% reliable, it makes no sense to speak of more, or c) less than 100% reliable, because it makes no sense to speak of more
- # [14:56] <Lachy> Dashiva, it means it performed better than expected or possible
- # [15:04] <Lachy> I'm a little confused about the changes regarding conformance of unescaped ampersands that are being discussed on the list. AFAICT, the spec still says that unescaped ampersands in attribute values are still ambiguous
- # [15:04] <Lachy> is it only the parsing section that has been changed to not emit a parse error?
- # [15:05] <zcorpan> Lachy: "or, if the character is in an attribute value, one or more characters in the ranges U+0030 DIGIT ZERO .. U+0039 DIGIT NINE, U+0041 LATIN CAPITAL LETTER A .. U+005A LATIN CAPITAL LETTER Z, and U+0061 LATIN SMALL LETTER A .. U+007A LATIN SMALL LETTER Z, followed by a U+003D EQUALS SIGN character (=)."
- # [15:05] <hsivonen> now I'm confused whether "RT" on twitter means re-tweet or reply to
- # [15:05] <hsivonen> I thought it was the former, but I see usage that looks like the latter
- # [15:05] <Lachy> hsivonen, it's supposed to mean re-tweet
- # [15:06] <hsivonen> ok. good
- # [15:06] * Quits: zcorpan (n=zcorpan@c83-252-196-43.bredband.comhem.se)
- # [15:06] <Lachy> some people must be misusing it
- # [15:08] * Joins: philipj (n=philipj@pat.se.opera.com)
- # [15:08] <Lachy> that part zcorpan just quoted is what confused me. It's quite difficult to comprehend
- # [15:10] * Philip` has non-fun trying to get Perl and Python implementations of YAML to interoperate
- # [15:10] <Lachy> and, after rereading it, I think it means that href="foo&bar=" not ambiguous, but href="foo&bar" is because it explicitly says it needs to be followed by an equals sign
- # [15:10] <Philip`> (particularly for handling Unicode characters)
- # [15:10] <Lachy> (though, I would'nt be surprised if I still got that wrong, since the paragraph is so badly written)
- # [15:16] * Joins: allanmac (n=allanmac@static-68-236-124-210.bos.east.verizon.net)
- # [15:20] * gsnedders blames Hixie
- # [15:24] <Philip`> Doesn't it just mean an ampersand is ambiguous if it doesn't match /&(\s|<|&|[0-9A-Za-z]+=)/?
- # [15:24] <Philip`> (which would be odd because & would be defined as ambiguous, I guess)
- # [15:27] <jgraham> Philip`: Do they interoperate on non-Unicode characters?
- # [15:27] * Joins: philipj_ (n=philipj@pat.se.opera.com)
- # [15:28] <Philip`> jgraham: Not quite
- # [15:28] * gsnedders wonders how long `git blame -L '/>Tokeni/,/>Tree construct/' source` will take to run
- # [15:28] <Philip`> One library outputs strings like "foo \
- # [15:28] <Philip`> bar"
- # [15:28] * Quits: philipj (n=philipj@pat.se.opera.com) (Read error: 110 (Connection timed out))
- # [15:28] <Philip`> (using the slash to escape the newline because it's just there for pretty wrapping)
- # [15:28] <Philip`> and a different library parses that as a literal \ in the string
- # [15:29] <Philip`> I should probably use a different interchange format, like JSON
- # [15:29] <Philip`> but I think it works now so I'm not going to change it
- # [15:35] <jgraham> http://blog.digitalbazaar.com/2009/05/31/admitting-that-javascript-was-a-mistake/ makes the exciting claim that Javascript was a mistake because it is a functional programming language
- # [15:42] * Joins: dbloom-work (n=futurama@nat/google/x-656e8927d1e19bb3)
- # [15:42] * Parts: dbloom-work (n=futurama@nat/google/x-656e8927d1e19bb3)
- # [15:42] * Quits: virtuelv (n=virtuelv@pat-tdc.opera.com) ("Ex-Chat")
- # [15:42] * Quits: harig (n=opera@59.90.71.35) (Read error: 110 (Connection timed out))
- # [15:44] <Philip`> jgraham: and that we should use a procedural language like Python instead
- # [15:45] <Lachy> "Debugging in general (which would be impossible without Firebug)." -- clearly, that's not true. Venkman was a great debugger well before firebug
- # [15:52] <Lachy> using python in browsers instead of JavaScript would be an even bigger mistake, cause then we'd have to deal with the insane, unintuitive design of python
- # [16:00] * Quits: mgrdcm (n=mgrdcm@69.246.244.191)
- # [16:00] * Joins: hallvors (n=hallvord@cm-84.208.127.109.getinternet.no)
- # [16:02] <Philip`> Lachy: Why is that worse than the insane, unintuitive design of JavaScript?
- # [16:02] <jgraham> Lachy: There is really nothing wrong with Python
- # [16:02] <jgraham> It's not really designed to go in browsers though
- # [16:02] <Philip`> I imagine one serious problem would be either the language would fork, or the language in one environment (in-browser vs out-of-browser) would have to make huge sacrifices for the other
- # [16:03] <Philip`> where nobody sensible uses JS outside of browsers, so there aren't widely-diverging demands on it
- # [16:03] <jgraham> Philip`: Indeed. JS-as-a-language has basically taken success in the browser at the expense of no success outside the browser
- # [16:04] <Lachy> Philip`, the design of javascript is more intuitive than python, though I admit it does have some concepts like closures and prototype chains that can be difficult to grasp
- # [16:05] <jgraham> Lachy: I would toatlly love evidence backing up that statement
- # [16:05] <Lachy> jgraham, which part of the statement? The complexity of closures and prototype chains, or that it's more intuitive than python?
- # [16:06] <jgraham> Because I think basically exactly the opposite; python has a few tough features but is basically sane whereas js is basically complex all the way through
- # [16:06] <jgraham> Lachy: The intuitivemenss part
- # [16:07] <Philip`> I think Perl is sane, so I don't have problems with either JS or Python
- # [16:09] <jgraham> As a random example javascript will allow you to do Constructor() (without "new") to execute a constructor function and not only will you not get the Object you were expecting back you will probably mess up the global namespace
- # [16:10] <Lachy> calling Constructor() without "new" is just a regular function call
- # [16:10] <jgraham> Lachy_: That's the point
- # [16:10] <jgraham> function Construct() {this.a = 2}; b = Construct()
- # [16:10] <jgraham> Sets a global variable a to 2
- # [16:12] * Joins: ROBOd2 (n=robod@89.122.216.38)
- # [16:12] <Lachy> as an example of a completely backwards and unintuitive feature in python, to join an array of strings with some delimiter, instead of calling array.join(delim), you have to call "delim".join(array)
- # [16:13] <Lachy> and they use weird names like lists and dictionaries instead of array
- # [16:14] <jgraham> Lachy: I thought that was crazy untill I realised that doing an operation on a string and getting a string back is more consistent than doing an operation on an array and getting a string back
- # [16:14] * Quits: ROBOd (n=robod@89.122.216.38) (Read error: 110 (Connection timed out))
- # [16:15] <Lachy> no, doing an operation on the object itself (an array in this case) to obtain some output makes much more sense from an object oriented programming perspective
- # [16:15] <jgraham> Lachy: They are actually rather good names. "array" implies things that aren't necessarily true
- # [16:15] <Lachy> like what?
- # [16:15] <jgraham> (moreso in js than in python even)
- # [16:16] <Philip`> Like O(1) access time
- # [16:16] <jgraham> Lachy: a = new Array(); a[Math.pow(2,32)-1] = 1;
- # [16:17] <jgraham> Lachy: Ho much memory does that use and how fast would it be enumerated?
- # [16:17] <jgraham> s/Ho/How/
- # [16:17] <Dashiva> -2, surely
- # [16:17] * Quits: nessy (n=nessy@203-166-243-94.dyn.iinet.net.au) ("This computer has gone to sleep")
- # [16:18] <jgraham> Dashiva: Oh yeah, sorry
- # [16:19] <Philip`> Why -2?
- # [16:19] <Dashiva> Otherwise .length can overflow
- # [16:20] <Philip`> Ah
- # [16:20] <jgraham> Philip`: Array index properties have to be < 2^32 -1
- # [16:20] <Lachy> indeed, it does overflow. a.length returns 0 in the first case
- # [16:20] <jgraham> Lachy: That's a bug
- # [16:21] <jgraham> Or maybe I'm wrong.
- # [16:21] <Lachy> Both Opera and Firefox do the same thing
- # [16:22] <jgraham> Yeah it is common behaviour. I thought it was a bug specwise but maybe something that has been adopted as common behaviour
- # [16:23] <Dashiva> It's a bug specwise, yes. But what does that matter :P
- # [16:23] <Lachy> jgraham, anyway, in answer to your question, if you created a list of the same length in python, how much memory would it use and how fast would it be enumerated?
- # [16:24] <Philip`> You can't assign to random indexes, without allocating the space first
- # [16:24] <Philip`> (using append, extend, etc)
- # [16:27] <Lachy> Philip`, sure, I'm not concerned about the specific method used to create the list of that length. My question was just pointing that the the performance question also applies to python under the same circumstances
- # [16:28] <Dashiva> I think his point is that in Python some of the things implicit in JS are made explicit
- # [16:28] <Lachy> the implicit features in JS are a nice feature to have
- # [16:29] <Philip`> Lachy: The same circumstances don't exist in Python
- # [16:29] <Lachy> Philip`, surely you can create a list of that length in some way though
- # [16:30] <Philip`> Lachy: Only if you fill in all the intermediate values
- # [16:30] <Philip`> Lachy: which is different to what the JS example is doing
- # [16:31] <Lachy> well, than that's a point to JS then cause being able to create arrays of that length without needing to fill in all the intermediate values explicitly, at least until they need a non-undefined value, is a feature
- # [16:33] <Philip`> I think jgraham's point was that that feature in JS clearly can't be implemented with the data structure that's typically called an array
- # [16:34] <jgraham> Lachy: It is not at all obvious that something called an "Array" would actually be a hashtable, or something similar under the hood
- # [16:34] * Joins: dglazkov (n=dglazkov@69.181.143.54)
- # [16:34] <Philip`> and so it's misleading to call it "Array" in JS
- # [16:36] <Lachy> the underlying technical implementation is really irrelevant to whether or not it's an array
- # [16:37] * Joins: aroben (n=aroben@unaffiliated/aroben)
- # [16:38] <Lachy> the fact that it can be used as a stack, queue, hash table or array may be a reason to not call it just an array though, but that's a very minor issue
- # [16:38] <Philip`> The underlying technical implementation is critical to the distinction between arrays and lists and hashtables and hybrids
- # [16:38] * Joins: mgrdcm (n=mgrdcm@65.111.247.194)
- # [16:39] <Philip`> and people should understand the distinctions, so they don't write silly code that has terrible performance
- # [16:39] <jgraham> Lachy: Also there are plenty of thother things; var a = {}; a[1]="a"; a["1"] = "b"; //oops I overwrote my key
- # [16:40] <jgraham> The fact the assignment creates globals
- # [16:40] <jgraham> The with statement
- # [16:41] <Philip`> Optional semicolons
- # [16:41] <Lachy> yes, the with statement is a mistake, just like the goto and break statements in other languages
- # [16:41] <jgraham> eval
- # [16:41] <jgraham> (Yes I know Python has eval but it is almost never used)
- # [16:42] <jgraham> (and it is much worse in a web context)
- # [16:42] <Lachy> people who use eval in javascript are usually clueless programmers (or they're using it for JSON parsing, despite the security problems)
- # [16:44] <Philip`> I know someone who used eval("a."+b) because they weren't aware that a[b] was equivalent
- # [16:44] <jgraham> the way that enumeration works
- # [16:44] <jgraham> A bunch of stuff that should get better in ES5 wrt defining object properties
- # [16:45] <Rik|work> Philip`: I believe it's one of the most reason people use eval
- # [16:45] <jgraham> the fact that strings, booleans and numbers have two different representations
- # [16:45] <Philip`> The use of '+' for both string concatenation and addition
- # [16:45] <jgraham> One of which is totally useless except for spec-internal algorithms
- # [16:45] <gsnedders> How many parse errors should "<!DOCTYPE" produce? I, and the PHP impl., think 1 (as of the change in spec of 2009-05-26). The test case says 2.
- # [16:45] <gsnedders> (Likely answer: test case is unchanged.)
- # [16:46] <gsnedders> s/26/24/
- # [16:46] <jgraham> Philip`: Never had a problem with that but the implicit type shifiting is odd
- # [16:47] <jgraham> also == vs ===
- # [16:47] <jgraham> Object equality
- # [16:47] <jgraham> [1,2,3] != [1,2,3]
- # [16:50] <gsnedders> What should "<a a=a&>" output?
- # [16:50] <gsnedders> (From the tokenizer)
- # [16:52] * ap|away is now known as ap
- # [16:52] * weinig|zZz is now known as weinig
- # [16:53] * Quits: dglazkov (n=dglazkov@69.181.143.54)
- # [16:55] <gsnedders> "If no match can be made, then no characters are consumed, and nothing is returned. If the current state is not the character reference in attribute value state, or the U+0026 AMPERSAND character is not followed by one or more characters in the ranges U+0030 DIGIT ZERO to U+0039 DIGIT NINE, U+0041 LATIN CAPITAL LETTER A to U+005A LATIN CAPITAL LETTER Z, and U+0061 LATIN SMALL LETTER A to U+007A LATIN SMALL LETTER Z, fo
- # [16:55] <gsnedders> by a U+003D EQUALS SIGN character (=), then this is also a parse error."
- # [16:55] <gsnedders> That really doesn't read well.
- # [16:57] * Parts: allanmac (n=allanmac@static-68-236-124-210.bos.east.verizon.net)
- # [16:57] <gsnedders> So in the character reference in attribute value state then "&foo=" is a parse error, but "&foo" is not, right?
- # [16:57] <gsnedders> Wrong way round.
- # [16:58] <gsnedders> "&foo=" is not a parse error, "&foo>" is.
- # [16:59] * Joins: zcorpan (n=zcorpan@c83-252-196-43.bredband.comhem.se)
- # [17:00] <gsnedders> "<a a=a&>" is right in the test, my impl. is not.
- # [17:01] * Quits: Maurice (n=ano@a80-101-46-164.adsl.xs4all.nl) ("Disconnected...")
- # [17:02] <Lachy> http://www.molly.com/2009/06/02/why-xhtml2/
- # [17:03] * Quits: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de) (Remote closed the connection)
- # [17:04] <beowulf> the listed advantages are not familiar to me as an html author
- # [17:05] * Quits: hallvors (n=hallvord@cm-84.208.127.109.getinternet.no)
- # [17:05] <beowulf> actually, i want to smash things now
- # [17:05] <Lachy> http://twitter.com/mollydotcom/status/2004173388
- # [17:05] <Lachy> apparently, there's a new version of that article coming
- # [17:06] <Lachy> "Search engines are ‘user agents’ that don’t support frames!" - I've never once seen any evidence to support that claim
- # [17:07] * Joins: dglazkov_ (n=dglazkov@72.14.224.1)
- # [17:07] * Parts: Mrmil (n=ut_ollie@host-77-236-204-8.blue4.cz)
- # [17:07] <Lachy> in fact, the first result returned is a framed page: http://www.google.com/search?q=Java+docs
- # [17:07] <Lachy> so it's a bogus claim
- # [17:08] <beowulf> an advantage of xhtml2 to an html author is "CSS gives more presentational possibilities than plain HTML"
- # [17:08] <beowulf> i know you all think html authors are stupid, but that's insulting
- # [17:09] <Lachy> yeah, I read that and wondered why a general advantage of using CSS was listed as one specifically benefiting XHTML2
- # [17:10] <beowulf> "Visible on more devices" # gah
- # [17:11] <Lachy> of course, that claim is based in a theoretical future world in which support for XHTML2 has been added to devices and the number outweighs the number of devices that support HTML today
- # [17:12] <jgraham> The claim is based on the erronous assumption that it is not possible to parse HTML on small devices
- # [17:13] <jgraham> WWhich is just crazy given that there are small devices shipping with HTML parsers today and even smaller devices that render html content using e.g. mini
- # [17:13] <beowulf> that claim is based on never having written anything for a small device
- # [17:14] <beowulf> and most of those claims are based on never having worked on html more complicated than a w3c page
- # [17:14] <Lachy> later tonight, after Molly posts the proper version of that post, I will blog a detailed rebuttal of all his bogus points
- # [17:15] * Quits: heycam (n=cam@203-217-67-148.dyn.iinet.net.au) (Read error: 101 (Network is unreachable))
- # [17:16] * Quits: zcorpan (n=zcorpan@c83-252-196-43.bredband.comhem.se) (Read error: 110 (Connection timed out))
- # [17:17] <beowulf> i find that whole 'less presentation, more structure' section insulting
- # [17:19] <Lachy> LOL. I missed this one the first time through: "Advantages: All the ones that you can imagine, because XML is a Good Thing"
- # [17:20] <beowulf> fair enough, i don't mind if it's xml or text, but some of those points are written by someone who's guessing what most people do, or so it would seem to my dumb html author mind
- # [17:23] <Lachy> beowulf, it's written by Steven Pemberton
- # [17:24] <beowulf> Lachy: who's he?
- # [17:25] <Lachy> XHTML2 WG chair
- # [17:25] <Lachy> or, at least member, if he's not the chair, but I'm pretty sure he is
- # [17:27] <Lachy> http://www.molly.com/2009/06/02/the-real-why-xhtml-discussion/
- # [17:28] * Joins: allanmac (n=allanmac@static-68-236-124-210.bos.east.verizon.net)
- # [17:29] * Quits: tndH (n=Rob@james-baillie-pc083-229.student-halls.leeds.ac.uk) (Read error: 110 (Connection timed out))
- # [17:29] <Lachy> "Now, if HTML had never had a lax parser, but had always been strict, there wouldn’t be an incorrect (syntax-wise) HTML page in the planet, because everyone uses a ’suck it and see’ approach"
- # [17:30] * Quits: allanmac (n=allanmac@static-68-236-124-210.bos.east.verizon.net) (Read error: 104 (Connection reset by peer))
- # [17:30] <Lachy> I wonder how he explains the presense of non-well-formed XHTML and SVG on the web
- # [17:34] * dglazkov_ is now known as dglazkov
- # [17:35] * Quits: Lachy (n=Lachy@pat-tdc.opera.com) ("Leaving")
- # [17:37] <takkaria> "HTML is just not addressing the use cases of the real world any more." hmm
- # [17:39] <Philip`> Lachy_: That viewpoint seems to be limited to the case where people write a small number of static pages and look at them all to see that they're correct
- # [17:39] <Philip`> which was perhaps a valid viewpoint in 1995
- # [17:40] <Philip`> but now everything is dynamic and mashed up, so your site's visitor is the first person in the world to see a particular page and encounter any errors on it
- # [17:40] * Joins: billmason (n=billmaso@ip240.unival.com)
- # [17:41] * Quits: pesla (n=retep@procurios.xs4all.nl) ("( www.nnscript.com :: NoNameScript 4.21 :: www.esnation.com )")
- # [17:42] * Philip` reads the blog post
- # [17:43] <jgraham> Philip`: Despite which there are a lot of conversations around HTML which revolve around the 1995 model being a good approximation to the truth
- # [17:43] <Philip`> "2. Look at it in the browser, if there is a problem, fix it, and look again." - ah, that seems to be where the problem is, because most sites contain an infinite number of pages and you can't look at them all in your browser when developing the site
- # [17:44] <Philip`> "I want the browsers to tell me when my pages are wrong" - sounds like a job for a validator
- # [17:45] <jgraham> What's the URL to the number of outstanding emails that Hixie has?
- # [17:45] <Philip`> (possibly a validator that's built in to the browser as an extension)
- # [17:45] <jgraham> (the really slow canvas graph one)
- # [17:46] * Quits: hdh (n=hdh@hdh-1-pt.tunnel.tserv20.hkg1.ipv6.he.net) (Read error: 54 (Connection reset by peer))
- # [17:48] <Philip`> jgraham: http://www.whatwg.org/issues/data.html ?
- # [17:48] * Joins: dglazkov_ (n=dglazkov@69.181.143.54)
- # [17:48] <jgraham> Philip`: Yes
- # [17:48] <jgraham> Thanks
- # [17:48] * Quits: dglazkov_ (n=dglazkov@69.181.143.54) (Client Quit)
- # [17:49] * Joins: allanmac (n=allanmac@dsl017-091-222.bos1.dsl.speakeasy.net)
- # [17:54] * Quits: weinig (n=weinig@c-67-180-35-124.hsd1.ca.comcast.net)
- # [17:59] * Joins: archtech (n=stanv@83.228.56.37)
- # [18:06] <gsnedders> And we're back in 2010 for the due date
- # [18:07] * Quits: dglazkov (n=dglazkov@72.14.224.1) (Read error: 110 (Connection timed out))
- # [18:08] * Joins: tndH (n=Rob@james-baillie-pc083-229.student-halls.leeds.ac.uk)
- # [18:09] * Joins: dglazkov (n=dglazkov@nat/google/x-f1b7f279bf858528)
- # [18:15] * Joins: heycam (n=cam@124-168-52-93.dyn.iinet.net.au)
- # [18:17] <gsnedders> Hixie: Can you add an id to the NCR table?
- # [18:17] * Joins: Maurice (i=copyman@5ED548D4.cable.ziggo.nl)
- # [18:23] * Parts: allanmac (n=allanmac@dsl017-091-222.bos1.dsl.speakeasy.net)
- # [18:24] * Joins: itpastorn (n=itpastor@139.57.227.87.static.th.siw.siwnet.net)
- # [18:32] * Joins: dimich (n=dimich@72.14.227.1)
- # [18:38] <gsnedders> "<!DOCTYPE" should return one parse error now, right?
- # [18:39] * Joins: weinig (n=weinig@17.246.17.109)
- # [18:41] * gsnedders commits it seeming nobody argues otherwise :P
- # [18:41] <gsnedders> (And it was the specific aim of the spec change to make it only return one parse error)
- # [18:42] <shepazu> Lachy_: there is little or no non-well-formed SVG on the web, fwiw
- # [18:43] <shepazu> there is some SVG that is invalid because Adobe's viewer allowed magic namespaces
- # [18:44] <jgraham> shepazu: Ho much SVG is created by automatic tools?
- # [18:44] <jgraham> (Other than e.g. inkscape)
- # [18:44] <shepazu> as far as XHTML, I seriously doubt there is much non-well-formed XHTML that is served exclusively as XHTML, and not text/html
- # [18:45] <shepazu> jgraham: I have no way of knowing that...
- # [18:45] <shepazu> but there was a lot of hand-generated SVG back in the early days, the majority, perhaps
- # [18:45] <shepazu> before Inkscape, definitely the vast majority
- # [18:46] <shepazu> there was also script-generated SVG, which will of course be non-WF
- # [18:46] <shepazu> unless it's generated as strings, I suppose
- # [18:47] <shepazu> but it didn't make it to the web, because it would have been corrected when it didn't work
- # [18:49] <shepazu> so, Lachy_'s premise doesn't seem to be borne out by reality
- # [18:49] <gsnedders> How does <x x=1 x=2 X=3> give two parse errors?
- # [18:49] <jgraham> gsnedders: How many did you expect?
- # [18:49] <gsnedders> jgraham: One.
- # [18:50] <gsnedders> One for each duplicated attribute?
- # [18:50] <shepazu> no, one could argue that this prevented or slowed the uptake of SVG, but that's another matter (and I think it's far less critical than that it was not supported by browsers and people had to download the Adobe viewer)
- # [18:50] <jgraham> gsnedders: Don't you lowercase the attribute name in the tokenizer?
- # [18:50] <gsnedders> jgraham: Yes.
- # [18:50] <shepazu> bbl
- # [18:51] <jgraham> gsnedders: So you end up with 3 x attributes, giving two parse errors, no?
- # [18:51] * Quits: shepazu (n=schepers@adsl-144-163-109.rmo.bellsouth.net) ("Core Breach")
- # [18:51] <gsnedders> jgraham: I didn't know whether the spec gave one parse error when it hit the first dupe or for all
- # [18:51] * Joins: maikmerten (n=maikmert@Z9496.z.pppool.de)
- # [18:52] <jgraham> gsnedders: I'm not reading the spec of anything. But I would expect 2 in some naive way
- # [18:52] <gsnedders> The spec says 2
- # [18:52] <gsnedders> I was being naïve and assuming the other logical option :P
- # [18:53] * Joins: annevk2 (n=annevk@LRouen-152-83-10-211.w80-13.abo.wanadoo.fr)
- # [18:54] * Quits: pauld (n=pauld@194.102.13.2)
- # [18:55] <Philip`> shepazu: "I seriously doubt there is much non-well-formed XHTML that is served exclusively as XHTML, and not text/html" - I agree with that doubt, but that's because I doubt there is much XHTML (regardless of well-formedness) that is served exclusively as XHTML
- # [18:55] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [18:56] * Quits: philipj_ (n=philipj@pat.se.opera.com) (Read error: 110 (Connection timed out))
- # [19:03] * Quits: jruderman (n=jruderma@c-98-248-40-206.hsd1.ca.comcast.net) ("Leaving...")
- # [19:06] * Quits: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com) (Remote closed the connection)
- # [19:06] * Joins: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com)
- # [19:07] * Quits: webben (n=benh@nat/yahoo/x-d6c214ec3df03d2f) (Read error: 60 (Operation timed out))
- # [19:07] * Joins: shepazu (n=schepers@adsl-144-163-109.rmo.bellsouth.net)
- # [19:10] * Joins: dave_levin (n=dave_lev@72.14.227.1)
- # [19:11] * Joins: webben (n=benh@nat/yahoo/x-0fba8502c7e780ef)
- # [19:12] * Quits: mat_t (n=mattomas@nat/canonical/x-6a3a5323ae4d0d81) ("This computer has gone to sleep")
- # [19:17] * Joins: mat_t (n=mattomas@nat/canonical/x-e2ae709f1403f70b)
- # [19:32] * Quits: myakura (n=myakura@p4050-ipbf3009marunouchi.tokyo.ocn.ne.jp) ("Leaving...")
- # [19:35] * Quits: weinig (n=weinig@17.246.17.109)
- # [19:37] * Joins: weinig (n=weinig@17.246.17.109)
- # [19:38] * Parts: onar (n=onar@17.226.20.255)
- # [19:40] * Quits: mat_t (n=mattomas@nat/canonical/x-e2ae709f1403f70b) ("This computer has gone to sleep")
- # [19:40] * Quits: jwalden (n=waldo@c-98-248-40-206.hsd1.ca.comcast.net) ("->office")
- # [19:45] * Joins: mlpug (n=mlpug@a88-115-171-214.elisa-laajakaista.fi)
- # [19:47] * Joins: jruderman (n=jruderma@corp-241.mountainview.mozilla.com)
- # [19:54] <gsnedders> "<x x x" should output two parse errors, right? One for dupe attr, and one for EOF?
- # [20:00] * Quits: jruderman (n=jruderma@corp-241.mountainview.mozilla.com) ("Leaving...")
- # [20:03] * Joins: arun__ (n=arun@adsl-76-200-191-109.dsl.pltn13.sbcglobal.net)
- # [20:04] * Quits: dolske (n=dolske@firefox/developer/dolske)
- # [20:06] * Joins: jruderman (n=jruderma@corp-241.mountainview.mozilla.com)
- # [20:09] * Joins: jwalden (n=waldo@corp-241.mountainview.mozilla.com)
- # [20:11] * Joins: virtuelv (n=virtuelv@084202133045.customer.alfanett.no)
- # [20:15] * Joins: drostie (n=hopkins@5ED17066.cable.ziggo.nl)
- # [20:17] * aroben is now known as aroben|lunch
- # [20:21] * Quits: Amorphous (i=jan@unaffiliated/amorphous) (Read error: 110 (Connection timed out))
- # [20:22] * Joins: dolske (n=dolske@corp-241.mountainview.mozilla.com)
- # [20:23] * Joins: wakaba_ (n=wakaba@EM114-51-130-198.pool.e-mobile.ne.jp)
- # [20:24] * Quits: archtech (n=stanv@83.228.56.37) (No route to host)
- # [20:24] * Joins: Amorphous (i=jan@unaffiliated/amorphous)
- # [20:28] * Quits: wakaba (n=wakaba@EM114-51-60-85.pool.e-mobile.ne.jp) (Read error: 60 (Operation timed out))
- # [20:28] * Quits: webben (n=benh@nat/yahoo/x-0fba8502c7e780ef) (Read error: 113 (No route to host))
- # [20:30] * Quits: Dashiva (i=Dashiva@wikia/Dashiva)
- # [20:33] * Quits: MikeSmith (n=MikeSmit@EM114-48-230-10.pool.e-mobile.ne.jp) (Read error: 110 (Connection timed out))
- # [20:35] * Quits: KevinMarks (n=KevinMar@c-67-164-14-96.hsd1.ca.comcast.net) ("The computer fell asleep")
- # [20:35] * Joins: KevinMarks (n=KevinMar@c-67-164-14-96.hsd1.ca.comcast.net)
- # [20:38] * Joins: pauld (n=pauld@host86-144-251-8.range86-144.btcentralplus.com)
- # [20:39] <jgraham> gsnedders: It seems bad to point to RFC2119 and say "oh we can't have a must requirement about that because browsers will interoperate"
- # [20:41] <jgraham> Because RFC2119 is clearly not written to deal with the situation that HTML is in where most authors are unaware of the specs and all implementations have to be error correcting
- # [20:41] * Quits: dimich (n=dimich@72.14.227.1)
- # [20:42] * jgraham wonders what the bad side effects of saying "HTML documents must be UTF8 encoded" would be
- # [20:42] <jgraham> Apart from the fact that it wouldn't match the default
- # [20:43] <jgraham> I gues you could say "HTML documents must be UTF8 encoded and must have <meta charset=utf8>"
- # [20:44] <jgraham> I can't see people going fo this though
- # [20:44] <tantek> jgraham you would simply have to define the processing model for when an HTML processor encountered an HTML document that was not encoded in UTF8.
- # [20:44] <jgraham> tantek: Of course the actual processing would have to work like it does today
- # [20:45] * Quits: dolske (n=dolske@firefox/developer/dolske)
- # [20:45] <jgraham> This would purely be an author requirement
- # [20:45] * Quits: weinig (n=weinig@17.246.17.109)
- # [20:46] <jgraham> At the very least it seems sensible to remove the ASCII loophole for declaring encodings
- # [20:46] <tantek> by "remove" do you mean "must ignore"?
- # [20:47] <tantek> you can't really "remove" anything from the author's array of options, you can only make it "do nothing" or have some other minimal effect.
- # [20:47] <jgraham> tantek: I mean make it mandatory to declare ascii documents wither in <meta> or through headers
- # [20:48] <jgraham> at the moment non-ascii has to be declared to be conforming, ascii does not
- # [20:48] <tantek> I'm not sure what that means unless you define what happens when authors don't do it.
- # [20:48] <jgraham> tantek: In terms of implementation requirements it doesn't mean anything
- # [20:49] * Quits: jruderman (n=jruderma@corp-241.mountainview.mozilla.com) ("Leaving...")
- # [20:49] <jgraham> Implementations still have to look at HTTP headers, <meta> elements, use heuristics or fall back to win-1252
- # [20:49] <jwalden> Lachy_: that's not overflow; 2**32-1 is not an array index property, so setting it has no effect on the length property
- # [20:49] <jgraham> jwalden: You would have thought so
- # [20:49] * Joins: dolske (n=dolske@corp-241.mountainview.mozilla.com)
- # [20:49] * Joins: Hish (n=chatzill@mail2.n-e-s.de)
- # [20:50] <jgraham> If you, say, read the spec. But the real world disagrees
- # [20:50] <jwalden> jgraham: no, that's exactly how the browsers work
- # [20:51] <jwalden> arrays-as-objects with all the concomitant baggage was a flaw, but the real world does pretty well with them anyway
- # [20:51] <jgraham> Oh wait a second my test earlier was totally wrong
- # [20:52] <jgraham> jwalden: Yes you are quite right. Apolologies for doubting you :)
- # [20:53] <jgraham> s/lo//
- # [20:53] <jwalden> no worries :-)
- # [20:53] * Quits: dglazkov (n=dglazkov@nat/google/x-f1b7f279bf858528)
- # [20:53] <jwalden> I've stared long and hard at the array-index-property parts of es3
- # [20:53] * Quits: KevinMarks (n=KevinMar@c-67-164-14-96.hsd1.ca.comcast.net) (Read error: 113 (No route to host))
- # [20:54] <jwalden> frankly, arrays-as-objects is probably a bigger problem for implementations than for developers, since the convert-to-sparse determination is unspecified but necessary for performance and constraining memory use
- # [20:57] <jwalden> it's also a compatibility concern: SpiderMonkey has specifically tweaked its thresholds to perform better on certain JS benchmarks promulgated by the authors of engines which have different thresholds that don't fall over on said tests
- # [20:57] <jwalden> I do so love benchmarketing
- # [20:59] <jwalden> (threshold for sparsifying, to be clear, although I would be surprised if others haven't been similarly tweaked)
- # [20:59] <Hixie> heycam: yt? i was wondering if you'd done anything on http://mcc.id.au/2009/01/string-handling/string-handling recently or had any plans to do more
- # [21:00] <jgraham> jwalden: It is pretty surprising for authors if things that are instantaneous in one browser take an excessive amount of time in others
- # [21:01] <jwalden> this wasn't "excessive" amounts of time, though, it was time measured in dozens of milliseconds
- # [21:01] * Joins: franksalim (n=frank@adsl-75-61-86-233.dsl.pltn13.sbcglobal.net)
- # [21:01] <jwalden> efficiently storing array properties is faster than doing a generic property-hash-storage system, but it's not order-of-magnitude slower, not enough for authors to get confused about it
- # [21:02] <jgraham> jwalden: Yeah I agree about a few milliseconds on typical microbenchmarks not being so important
- # [21:05] <jwalden> this is what benchmarketing drives you to do :-\
- # [21:06] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [21:09] * Quits: mgrdcm (n=mgrdcm@65.111.247.194)
- # [21:11] * Joins: mgrdcm (n=mgrdcm@65.111.247.194)
- # [21:12] * Quits: pauld (n=pauld@host86-144-251-8.range86-144.btcentralplus.com)
- # [21:17] * gsnedders wonders if there is any nice way to fix the horridness of PHP html5lib without making it slower
- # [21:18] <ezyang> Reimplement it in C
- # [21:19] <Hixie> jwalden: just make a benchmark that needs the optimisation you think is better for real world pages
- # [21:19] * Joins: Dashiva (i=Dashiva@wikia/Dashiva)
- # [21:20] <gsnedders> ezyang: yeah, without doing that? :P
- # [21:20] <ezyang> I mean, to a certain extent it would be smart
- # [21:20] <ezyang> At the very least, tokenization is something that probably should be in C
- # [21:21] <gsnedders> ezyang: I think any any extent it would be smart :P
- # [21:21] <gsnedders> s/any/to/
- # [21:21] * gsnedders has the tokenizer working as an iterator now
- # [21:21] <gsnedders> we're talking 50% slower.
- # [21:21] <ezyang> Not surprising
- # [21:22] <ezyang> Turning it into an iterator means you get all of those function calls we oh so cleverly removed back
- # [21:22] <ezyang> And more
- # [21:22] <gsnedders> Yup
- # [21:23] <gsnedders> It's interesting that it is actually slower than having all the function calls within the tokenizer
- # [21:23] <gsnedders> I mean, there are probably around the same number as I have it now.
- # [21:23] <ezyang> That's because iterator generates a bunch more calls
- # [21:23] <ezyang> Like, it checks if you're at the end() on every round
- # [21:23] <gsnedders> ezyang: I know, but I mean including those
- # [21:23] <ezyang> Hmm, unclear.
- # [21:24] * gsnedders wonders if it the calls to array_shift
- # [21:24] <gsnedders> (as that is O(n)
- # [21:24] * gsnedders profiles
- # [21:24] <ezyang> array_shift() shouldn't be O(n)...
- # [21:25] <ezyang> But I suppose PHP's array implementation would make it so.
- # [21:25] <gsnedders> It is. It re-indexes everything.
- # [21:25] <gsnedders> There's an SPL queue in 5.3…
- # [21:25] * gsnedders sighs
- # [21:26] <ezyang> If you want, you can branch and work on PHP5.3 only
- # [21:26] <gsnedders> No point
- # [21:26] <gsnedders> What we could do if create a class which implements the queue like bit of the weird SPL queue structure and use arrays internally there
- # [21:26] <gsnedders> array_shift isn't that bad actually
- # [21:27] <ezyang> Don't boher with that, then
- # [21:27] <gsnedders> It's the same culprits as before
- # [21:27] <gsnedders> It's all function call overhead more or less…
- # [21:27] <gsnedders> Did I say how much I love PHP yet?
- # [21:27] <ezyang> Maybe you're interpreting the results wrong?
- # [21:28] * Joins: jruderman (n=jruderma@corp-241.mountainview.mozilla.com)
- # [21:28] <gsnedders> I reckon 15% of the cost to be the function calls foreach creates.
- # [21:29] * Joins: dglazkov (n=dglazkov@nat/google/x-b11cfdd69ed42953)
- # [21:30] * ezyang puts html5lib performance on his queue of things to do after work
- # [21:31] <Philip`> Please feel free to optimise the Python html5lib too
- # [21:31] * gsnedders was really trying to do this to get the final few test cases to pass
- # [21:32] <gsnedders> I guess we could do the not-so-nice way the Python impl does it
- # [21:32] <Philip`> What's not-so-nice about it?
- # [21:32] * Joins: itpastorn1 (n=itpastor@139.57.227.87.static.th.siw.siwnet.net)
- # [21:32] <gsnedders> Philip`: Just think about who wrote it :P
- # [21:32] <Philip`> Uh... annevk2?
- # [21:33] <ezyang> What really needs to happen is the core string manipulation stuff needs to be written out in C
- # [21:33] <ezyang> And then we make wrappers around it in all the appropriate languages
- # [21:33] <Philip`> or jgraham?
- # [21:33] <gsnedders> ezyang: That's not the problem. The most expensive thing is the tree construction.
- # [21:33] <gsnedders> ezyang: http://stuff.gsnedders.com/phphtml5lib/
- # [21:33] <ezyang> Oh, well, then you should factor out the tree-specific stuff, and then make the SimpleTree impl.
- # [21:33] <gsnedders> Well, that isn't always true
- # [21:34] <gsnedders> That's never true :P
- # [21:34] <gsnedders> Oh well.
- # [21:34] <gsnedders> Ignore me.
- # [21:34] <gsnedders> :P
- # [21:34] <gsnedders> With the spec the most expensive thing is DOMNode->appendChild :P
- # [21:34] <ezyang> gsnedders: Screens don't do anything for me. The great thing about *CacheGrind is you can reframe the data and look further
- # [21:34] <gsnedders> ezyang: Indeed. But some people wanted to see
- # [21:35] <jgraham> gsnedders: Did you have an actual point about python html5lib or are you just casting aspersions?
- # [21:35] <annevk2> gsnedders, hey, I read that!
- # [21:35] <gsnedders> jgraham: Just insofar as it diverges from the spec.
- # [21:35] <gsnedders> annevk2: :D
- # [21:35] * gsnedders buys annevk2 a beer… next year.
- # [21:35] * Quits: roc (n=roc@121-72-202-1.dsl.telstraclear.net)
- # [21:35] <Philip`> gsnedders: The spec is meant to be diverged from
- # [21:35] <jgraham> gsnedders: In what way?
- # [21:35] * Joins: roc (n=roc@121-72-202-1.dsl.telstraclear.net)
- # [21:36] <Philip`> gsnedders: (That's why it says that any algorithm which produces equivalent output to the specified one is acceptable)
- # [21:36] <jgraham> Apart from known issues with failing tests?
- # [21:36] <ezyang> Philip`: You have to admit, though; it's a lot easier (w.r.t. to maintainability) to do that once the spec is stable.
- # [21:36] <gsnedders> Philip`: I know :P
- # [21:37] * gsnedders would quite like to write an impl. that uses something like Parsec
- # [21:37] <Philip`> ezyang: Indeed, but hopefully there are enough test cases and enough independent implementations that any problems caused by spec changes can be found relatively easily
- # [21:37] <jgraham> Somehow the headline "Microsoft unveils new controller" sounds rather sinister
- # [21:38] <roc> One Microsoft Way!
- # [21:39] * Joins: weinig (n=weinig@17.246.17.109)
- # [21:39] <ezyang> It takes me on average about thirty minutes to resolve a spec-code impedance. Maybe towards the end it was 15 minutes, after I got good at figuring out what was different.
- # [21:42] <gsnedders> ezyang: Practice! :P
- # [21:43] <ezyang> My point, though, is that even when the code is ~ the spec, it's nontrivial to resolve bugs.
- # [21:43] <ezyang> And it can onl get worse
- # [21:43] <gsnedders> ezyang: Solution: read all diffs with spec :P
- # [21:44] <gsnedders> ezyang: I brought the tokenizer up to date with the spec, FWIW
- # [21:44] <jgraham> gsnedders: That's not a very practical solution
- # [21:44] <ezyang> gsnedders: Awesome
- # [21:45] * Quits: mlpug (n=mlpug@a88-115-171-214.elisa-laajakaista.fi) (Remote closed the connection)
- # [21:45] * Joins: annevk42 (n=annevk@LRouen-152-83-10-211.w80-13.abo.wanadoo.fr)
- # [21:45] <gsnedders> ezyang: (and had to update a few test cases which means probably everything else fails now)
- # [21:45] <gsnedders> ezyang: I rewrote the entire NCR handling so we don't consume so much
- # [21:46] <ezyang> About 80% I thought I had to update a test-case, it was actually my fault
- # [21:46] <ezyang> You should probably double check.
- # [21:47] <gsnedders> ezyang: The aim of the commit in the spec was to reduce to one parse error from two. I just did that in the test :P
- # [21:48] * Quits: itpastorn (n=itpastor@139.57.227.87.static.th.siw.siwnet.net) (Connection timed out)
- # [21:49] <ezyang> Oh, that was the only change
- # [21:49] <ezyang> Yeah, that sounds legit
- # [21:50] <gsnedders> The other thing I did to test suite was add one test that I broke in uncommitted code locally
- # [21:51] * Joins: KevinMarks (n=KevinMar@nat/google/x-5679c17bef3e3325)
- # [21:56] * gsnedders wonders about getting hsivonen's parser working as a PHP ext
- # [21:56] <ezyang> Nonono!
- # [21:56] <ezyang> It has to be C.
- # [21:56] <gsnedders> ezyang: Uh, surely we can get C++ to work?
- # [21:56] <ezyang> C++ is not acceptable
- # [21:56] <ezyang> It has a horrid time integrating back to C
- # [21:57] <ezyang> And most bindings work better with C code than C++
- # [21:57] <jgraham> gsnedders: Write a parser in brainfuck and then write a brainfuck to C compiler
- # [21:57] <jgraham> No need to write C
- # [21:59] <gsnedders> ezyang: That's more work :P
- # [22:02] <jgraham> ezyang: Attributes like xlink:href in <body> should have local name "xlink:href" and be in no namespace, unless that changed recently
- # [22:02] * jgraham sees no evidence for such a change
- # [22:03] <ezyang> jgraham: Oh?
- # [22:03] <ezyang> Where in the spec does it say that?
- # [22:04] <jgraham> ezyang: Where in the spec does it say otherwise :)
- # [22:04] <jgraham> The only time that you insert attributes in a namespace is when you adjust foreign attributes for a token
- # [22:04] <jgraham> Which only happens for foreigncontent
- # [22:04] <jgraham> afaik
- # [22:05] <gsnedders> Hmm… "When an end tag token is emitted with attributes, that is a parse error." is hard to implement when once you've hit attributes you still don't know it'll actually be emitted
- # [22:05] <ezyang> Ah. That's probably right.
- # [22:05] <gsnedders> ezyang: Also, why are there things related to foreign content commented out in tokenizer?
- # [22:05] <ezyang> You should revert those changes (or I can revert them)
- # [22:05] <ezyang> gsnedders: Not sure what you're talking about
- # [22:05] <gsnedders> ezyang: seee // XXX not implemented
- # [22:05] <ezyang> jgraham: I know exactly why I thought that was otherwise the case
- # [22:06] <jgraham> ezyang: I can revert them if you like
- # [22:06] <ezyang> gsnedders: Oh, I never implemented that
- # [22:07] <ezyang> Please do so.
- # [22:07] * gsnedders wonders why test cases don't test that
- # [22:07] <ezyang> jgraham: That would be loverly. Also, update the wiki page to mention the difference between "xlink href" and "xlink:href"
- # [22:07] <ezyang> It's very subtle
- # [22:08] <jgraham> ezyang: If you have the wiki page can you update it? I would need to find it...
- # [22:08] * Quits: maikmerten (n=maikmert@Z9496.z.pppool.de) (Remote closed the connection)
- # [22:08] * Quits: weinig (n=weinig@17.246.17.109)
- # [22:09] <ezyang> http://wiki.whatwg.org/wiki/Parser_tests
- # [22:09] <ezyang> I lost my account info
- # [22:12] * Quits: arun__ (n=arun@adsl-76-200-191-109.dsl.pltn13.sbcglobal.net)
- # [22:12] * Joins: archtech (n=stanv@83.228.56.37)
- # [22:13] * aroben|lunch is now known as aroben
- # [22:18] * Quits: pmuellr (n=pmuellr@nat/ibm/x-38fb5dbe8394eb50)
- # [22:21] * Joins: bzed_ (n=bzed@devel.recluse.de)
- # [22:28] * Joins: riven` (n=colin@53525B67.cable.casema.nl)
- # [22:30] <jwalden> Hixie: it's not that I don't think the optimization is bad, it's that the dividing point between when and when not to optimize is not being determined by real-world scripts but rather by artificial use in benchmarks
- # [22:30] <jwalden> heycam: fyi, http://lists.w3.org/Archives/Public/public-webapps/2009AprJun/0720.html
- # [22:30] * gsnedders never ceases to be amazed by how bad RSS/Atom are created
- # [22:31] <Dashiva> hehe
- # [22:32] <Dashiva> JF linking to his blog reminded me about "small and narrow minds"
- # [22:32] <Dashiva> We haven't really come far from back there...
- # [22:33] * Quits: bzed (n=bzed@devel.recluse.de) (Read error: 110 (Connection timed out))
- # [22:33] * bzed_ is now known as bzed
- # [22:35] * Quits: roc (n=roc@121-72-202-1.dsl.telstraclear.net)
- # [22:39] * Joins: zcorpan (n=zcorpan@c83-252-196-43.bredband.comhem.se)
- # [22:46] * Quits: riven (n=colin@pdpc/supporter/professional/riven) (Connection timed out)
- # [22:47] * Joins: weinig (n=weinig@17.246.17.109)
- # [22:49] * Quits: ROBOd2 (n=robod@89.122.216.38) ("http://www.robodesign.ro")
- # [22:50] * Quits: sicking (n=chatzill@corp-241.mountainview.mozilla.com) (Remote closed the connection)
- # [22:54] * Quits: annevk2 (n=annevk@LRouen-152-83-10-211.w80-13.abo.wanadoo.fr) (Read error: 60 (Operation timed out))
- # [23:03] * Joins: dglazkov_ (n=dglazkov@nat/google/x-f01d860469752622)
- # [23:03] * Joins: olliej (n=oliver@17.246.17.244)
- # [23:06] * Joins: annevk2 (n=annevk@htr06-1-82-227-229-89.fbx.proxad.net)
- # [23:07] * Quits: ZombieLoffe (n=e@unaffiliated/zombieloffe)
- # [23:12] * Quits: ap (n=ap@194.154.88.38)
- # [23:18] * Quits: dglazkov (n=dglazkov@nat/google/x-b11cfdd69ed42953) (Read error: 110 (Connection timed out))
- # [23:19] * Joins: olliej_ (n=oliver@17.203.15.178)
- # [23:20] * Joins: arun__ (n=arun@adsl-76-200-191-109.dsl.pltn13.sbcglobal.net)
- # [23:23] * Joins: roc (n=roc@202.0.36.64)
- # [23:24] * Quits: Maurice (i=copyman@5ED548D4.cable.ziggo.nl) ("Disconnected...")
- # [23:35] * Quits: virtuelv (n=virtuelv@084202133045.customer.alfanett.no) (Read error: 110 (Connection timed out))
- # [23:36] * Quits: olliej (n=oliver@17.246.17.244) (Read error: 110 (Connection timed out))
- # [23:40] * Quits: annevk2 (n=annevk@htr06-1-82-227-229-89.fbx.proxad.net)
- # [23:42] * Quits: ciaran_lee_ (n=ciaran_l@83-70-243-34-dynamic.b-ras1.prp.dublin.eircom.net)
- # [23:43] <zcorpan> "Wow, cool! There’s been a rip in the space/time continuum and this article has slipped through from 1998!" - http://www.molly.com/2009/06/02/the-real-why-xhtml-discussion/
- # [23:47] * Quits: roc (n=roc@202.0.36.64)
- # [23:48] <arun__> zcorpan, hah :)
- # [23:49] <arun__> He had me at "books are dead."
- # [23:49] * Joins: roc (n=roc@202.0.36.64)
- # [23:55] * Joins: nessy (n=nessy@203-166-243-94.dyn.iinet.net.au)
- # Session Close: Wed Jun 03 00:00:00 2009
The end :)