Options:
- # Session Start: Thu Jul 03 00:00:01 2008
- # Session Ident: #whatwg
- # [00:02] * Parts: hasather (n=hasather@ti0034a380-2730.bb.online.no)
- # [00:04] * Quits: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com) (Connection timed out)
- # [00:05] * Quits: KevinMarks (n=KevinMar@nat/google/x-757c2439d6268d94) ("The computer fell asleep")
- # [00:06] <Lachy> has anyone listened to my boagworld interview yet? Any feedback for me?
- # [00:15] * Quits: Maurice (i=copyman@cc90688-a.emmen1.dr.home.nl) ("Disconnected...")
- # [00:30] * Joins: KevinMarks (n=KevinMar@nat/google/x-fe285529292b76e9)
- # [00:30] <Lachy> they finally get to my interview at about 30 minutes into the show.
- # [00:33] <Hixie> cool, look forward to listening to it
- # [00:33] <Hixie> probably monday
- # [00:39] * Quits: hdh0 (n=hdh@118.71.120.179) (Remote closed the connection)
- # [00:40] * Joins: hdh (n=hdh@118.71.120.179)
- # [00:42] * Quits: heycam (n=cam@124-168-29-248.dyn.iinet.net.au) ("bye")
- # [01:01] * Quits: qwert666 (n=qwert666@acat34.neoplus.adsl.tpnet.pl) ("Leaving")
- # [01:04] * Quits: billmason (n=billmaso@ip192.unival.com) (".")
- # [01:07] * Joins: heycam (n=cam@clm-laptop.infotech.monash.edu.au)
- # [01:11] * Joins: epeus (n=KevinMar@nat/google/x-a0bb60336727a3d2)
- # [01:13] * Quits: kangax (n=kangax@209.10.106.40)
- # [01:16] * Quits: KevinMarks (n=KevinMar@nat/google/x-fe285529292b76e9) (Connection timed out)
- # [01:22] * Joins: roc_ (n=roc@202.0.36.64)
- # [01:37] * Joins: Lachy_ (n=Lachlan@ti200710a340-0519.bb.online.no)
- # [01:38] * Quits: roc (n=roc@202.0.36.64) (Read error: 113 (No route to host))
- # [01:40] * Quits: hdh (n=hdh@118.71.120.179) (Remote closed the connection)
- # [01:47] * Joins: deane (n=dean@121-72-184-140.dsl.telstraclear.net)
- # [01:49] * Joins: hdh (n=hdh@118.71.120.179)
- # [01:50] * epeus is now known as KevinMarks
- # [01:53] * Quits: Lachy (n=Lachlan@85.196.122.246) (Read error: 110 (Connection timed out))
- # [02:17] * Lachy_ is now known as Lachy
- # [02:23] * Joins: jacobolus (n=jacobolu@adsl-69-228-190-230.dsl.snfc21.pacbell.net)
- # [02:28] * Quits: aroben (n=aroben@unaffiliated/aroben)
- # [02:28] * Quits: tndH (i=Rob@adsl-87-102-85-115.karoo.KCOM.COM) ("ChatZilla 0.9.83-rdmsoft [XULRunner 1.9/2008061013]")
- # [02:59] * Quits: weinig (n=weinig@131.107.204.126)
- # [02:59] * Quits: shepazu (n=schepers@131.107.204.126)
- # [02:59] * Quits: MikeSmith (n=MikeSmit@131.107.204.126) ("Less talk, more pimp walk.")
- # [03:01] * Joins: weinig (n=weinig@131.107.204.126)
- # [03:02] * Joins: shepazu (n=schepers@131.107.204.126)
- # [03:03] * Quits: tantek (n=tantek@dsl001-150-252.sfo1.dsl.speakeasy.net)
- # [03:09] * Quits: weinig (n=weinig@131.107.204.126)
- # [03:10] * Quits: shepazu (n=schepers@131.107.204.126)
- # [03:20] <Philip`> jacobolus: http://krijnhoetmer.nl/irc-logs/whatwg/20080702#l-282
- # [03:21] * Quits: dbaron (n=dbaron@corp-241.mountainview.mozilla.com) ("8403864 bytes have been tenured, next gc will be global.")
- # [03:23] <jacobolus> Philip`: that may be, but that limits what you can do
- # [03:24] <jacobolus> Philip`: it's quite useful to draw a bit, then transform, then draw a bit more (in the same path)
- # [03:25] <jacobolus> Philip`: that spec wording you pasted in that chat seems about right to me, and is sufficiently explicit. cool.
- # [03:25] <Philip`> jacobolus: Only Opera prevents you from doing that, and nobody uses Opera so you could ignore it ;-)
- # [03:26] <jacobolus> yep
- # [03:26] <jacobolus> that's the plan
- # [03:26] * Philip` uses Opera :-(
- # [03:26] <jacobolus> Philip`: so my little test thing at http://www.orbited.org/wiki/CanvasShapes won’t work for you then
- # [03:27] <jacobolus> or rather, it will only draw circles
- # [03:27] * Quits: othermaciej (n=mjs@131.107.204.126) (Read error: 110 (Connection timed out))
- # [03:28] <Philip`> jacobolus: That's what happens in Opera, though I can trivially switch to Firefox to see it properly :-)
- # [03:31] <Philip`> jacobolus: The arc() call for drawing circles should probably use false (clockwise) instead of true, else (according to the spec) it might (if Math.PI > π) draw nothing instead of a circle
- # [03:31] <jacobolus> okay
- # [03:32] <Philip`> (because of the way angles get wrapped, depending on the clockwisity and the angles)
- # [03:32] <jacobolus> Philip`: I would expect one of arc(x, y, radius, 0, 0, false) and arc(x, y, radius, 0, 0, true) to draw a whole circle
- # [03:32] <jacobolus> but both just do nothing
- # [03:32] <Philip`> (Hmm, maybe "clockwisdom" is a better term)
- # [03:32] <jacobolus> hehe
- # [03:34] <Philip`> arc() is a bit weird and unintuitive
- # [03:34] * Quits: annevk (n=annevk@131.107.204.126) (Read error: 110 (Connection timed out))
- # [03:35] <Philip`> but it's implemented interoperably in Firefox and WebKit, so I guess there'd need to be strong justification for changing the spec to not match those implementations
- # [03:44] <jacobolus> Philip`: hmm, if I use a bit more than 2π for the second angle, it draws most of a circle whether I use true or false
- # [03:52] <Philip`> jacobolus: Argh
- # [03:52] <Philip`> You are entirely right, and that is the expected behaviour
- # [03:52] <Philip`> I just get this all mixed up every time I look at arc() :-/
- # [03:52] <Philip`> I remember not enough to be correct, but enough to be dangerous
- # [03:53] <jacobolus> Philip`: is there a mathy explanation of how arc is supposed to work?
- # [03:53] <Philip`> jacobolus: What do you consider "mathy"?
- # [03:53] <Philip`> (particularly compared to what's in the spec already)
- # [03:53] <jacobolus> just unambiguous. I haven't read what the spec says about arc :)
- # [03:56] <Philip`> If start->end is clockwise (i.e. end > start), and anticlockwise=false, then it draws all the way from start to end and possibly goes all the way around the circle (though at most once); and if anticlockwise=true, then the angles are wrapped modulo 2pi and the shortest anticlockwise arc from start to end is drawn
- # [03:56] <Philip`> and same if you swap all mentions of 'clockwise' and 'anticlockwise'
- # [03:56] <Philip`> or at least I think that's what it is
- # [03:59] <Philip`> Oh, maybe the problem is if Math.PI < π, because drawing anticlockwise from 0 to 2π-ε would draw an ε-long line instead of a circle
- # [03:59] <Philip`> But I could still be wrong, so I'll just give up and go to bed :-)
- # [04:01] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [04:01] <jacobolus> Philip`: yes, that is true
- # [04:02] <jacobolus> Philip`: if you have Math.PI < π then arc(x, y, radius, 0, 2*Math.PI, true) draws nothing
- # [04:02] <jacobolus> so you’re right, to draw a circle I should use false
- # [04:04] <Philip`> Drawing circles is quite irritatingly complex
- # [04:04] <Philip`> Anyway, good night for now
- # [04:05] <jacobolus> 'night
- # [04:05] <jacobolus> thanks
- # [04:19] * Quits: KevinMarks (n=KevinMar@nat/google/x-a0bb60336727a3d2) (Connection timed out)
- # [04:47] * Joins: aroben (n=adamrobe@76.111.160.14)
- # [05:13] * Quits: john_fallows (n=j_r_fall@ip-12-22-56-126.hqglobal.net) (Remote closed the connection)
- # [06:18] * Joins: gavin__ (n=gavin@people.mozilla.com)
- # [06:19] * Joins: wakaba_ (n=w@64.162.210.220.dy.bbexcite.jp)
- # [06:20] * Quits: Lachy (n=Lachlan@ti200710a340-0519.bb.online.no) (card.freenode.net irc.freenode.net)
- # [06:20] * Quits: jmb (n=jmb@login.ecs.soton.ac.uk) (card.freenode.net irc.freenode.net)
- # [06:20] * Quits: gavin_ (n=gavin@firefox/developer/gavin) (card.freenode.net irc.freenode.net)
- # [06:20] * Quits: wakaba (n=w@64.162.210.220.dy.bbexcite.jp) (card.freenode.net irc.freenode.net)
- # [06:20] * Quits: mrbkap (n=mrbkap@people.mozilla.com) (card.freenode.net irc.freenode.net)
- # [06:20] * Quits: syp__ (n=syp@lasigpc9.epfl.ch) (card.freenode.net irc.freenode.net)
- # [06:20] * Quits: deltab (n=deltab@82-36-30-34.cable.ubr02.smal.blueyonder.co.uk) (card.freenode.net irc.freenode.net)
- # [06:21] * Joins: Lachy (n=Lachlan@ti200710a340-0519.bb.online.no)
- # [06:21] * Joins: jmb (n=jmb@login.ecs.soton.ac.uk)
- # [06:21] * Joins: mrbkap (n=mrbkap@people.mozilla.com)
- # [06:21] * Joins: wakaba (n=w@64.162.210.220.dy.bbexcite.jp)
- # [06:21] * Joins: deltab (n=deltab@82-36-30-34.cable.ubr02.smal.blueyonder.co.uk)
- # [06:21] * Joins: syp__ (n=syp@lasigpc9.epfl.ch)
- # [06:21] * Quits: mrbkap (n=mrbkap@people.mozilla.com) (Read error: 104 (Connection reset by peer))
- # [06:22] * Joins: mrbkap (n=mrbkap@people.mozilla.com)
- # [06:23] * Joins: jmb^ (n=jmb@login.ecs.soton.ac.uk)
- # [06:26] * Quits: wakaba (n=w@64.162.210.220.dy.bbexcite.jp) (card.freenode.net irc.freenode.net)
- # [06:26] * Quits: Lachy (n=Lachlan@ti200710a340-0519.bb.online.no) (card.freenode.net irc.freenode.net)
- # [06:26] * Quits: syp__ (n=syp@lasigpc9.epfl.ch) (card.freenode.net irc.freenode.net)
- # [06:26] * Quits: deltab (n=deltab@82-36-30-34.cable.ubr02.smal.blueyonder.co.uk) (card.freenode.net irc.freenode.net)
- # [06:26] * Quits: jmb (n=jmb@login.ecs.soton.ac.uk) (card.freenode.net irc.freenode.net)
- # [06:26] * Quits: hdh (n=hdh@118.71.120.179) (Remote closed the connection)
- # [06:27] * Joins: aroben_ (n=adamrobe@76.111.160.14)
- # [06:27] * Quits: aroben (n=adamrobe@unaffiliated/aroben) (Read error: 104 (Connection reset by peer))
- # [06:33] * Joins: Lachy (n=Lachlan@ti200710a340-0519.bb.online.no)
- # [06:33] * Joins: jmb (n=jmb@login.ecs.soton.ac.uk)
- # [06:33] * Joins: wakaba (n=w@64.162.210.220.dy.bbexcite.jp)
- # [06:33] * Joins: deltab (n=deltab@82-36-30-34.cable.ubr02.smal.blueyonder.co.uk)
- # [06:33] * Joins: syp__ (n=syp@lasigpc9.epfl.ch)
- # [06:33] * Quits: jmb (n=jmb@login.ecs.soton.ac.uk) (Connection timed out)
- # [06:33] * Quits: syp__ (n=syp@lasigpc9.epfl.ch) (Connection reset by peer)
- # [06:34] * Joins: hdh (n=hdh@118.71.123.16)
- # [06:35] * Joins: Lachy_ (n=Lachlan@ti200710a340-0519.bb.online.no)
- # [06:35] * Quits: wakaba (n=w@64.162.210.220.dy.bbexcite.jp) (Read error: 110 (Connection timed out))
- # [06:35] * Joins: syp_ (n=syp@lasigpc9.epfl.ch)
- # [06:37] * Joins: eseidel (n=eseidel@c-24-118-134-245.hsd1.mn.comcast.net)
- # [06:50] * Quits: Lachy (n=Lachlan@ti200710a340-0519.bb.online.no) (Read error: 110 (Connection timed out))
- # [07:01] * gavin__ is now known as gavin
- # [07:04] * Quits: eseidel (n=eseidel@c-24-118-134-245.hsd1.mn.comcast.net)
- # [07:07] * Joins: eseidel (n=eseidel@c-24-118-134-245.hsd1.mn.comcast.net)
- # [07:10] * Quits: jacobolus (n=jacobolu@adsl-69-228-190-230.dsl.snfc21.pacbell.net)
- # [07:18] * Joins: jacobolus (n=jacobolu@adsl-69-227-227-155.dsl.pltn13.pacbell.net)
- # [07:26] * Quits: eseidel (n=eseidel@c-24-118-134-245.hsd1.mn.comcast.net)
- # [07:30] * Joins: svl (n=me@60.234.159.114)
- # [07:46] * Quits: aroben_ (n=adamrobe@unaffiliated/aroben)
- # [08:13] * Joins: othermaciej (n=mjs@12.45.39.194)
- # [08:13] * Joins: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de)
- # [08:14] * Quits: svl (n=me@60.234.159.114) ("And back he spurred like a madman, shrieking a curse to the sky.")
- # [08:15] * Joins: annevk (n=annevk@65.219.168.142)
- # [08:16] * Quits: roc_ (n=roc@202.0.36.64)
- # [08:20] * Joins: weinig (n=weinig@12.45.39.194)
- # [08:37] * Quits: jacobolus (n=jacobolu@adsl-69-227-227-155.dsl.pltn13.pacbell.net)
- # [08:38] * Quits: Dashiva (i=Dashiva@wikia/Dashiva) (Read error: 110 (Connection timed out))
- # [08:41] * Quits: heycam (n=cam@clm-laptop.infotech.monash.edu.au) ("bye")
- # [08:43] * Joins: jruderman_ (n=jruderma@ip68-5-179-249.oc.oc.cox.net)
- # [08:47] * Quits: hdh (n=hdh@118.71.123.16) (Remote closed the connection)
- # [08:51] * Joins: sverrej_ (n=sverrej@89.10.27.86)
- # [08:52] * Joins: Dashiva (i=Dashiva@209.80-202-223.nextgentel.com)
- # [08:57] * Joins: jacobolus (n=jacobolu@c-24-6-178-241.hsd1.ca.comcast.net)
- # [09:00] * Quits: jruderman (n=jruderma@ip68-5-179-249.oc.oc.cox.net) (Read error: 110 (Connection timed out))
- # [09:00] * Joins: shepazu (n=schepers@67-42-84-126.tukw.qwest.net)
- # [09:04] * Quits: sverrej (n=sverrej@89.10.27.86) (Read error: 113 (No route to host))
- # [09:04] * Joins: qwert666 (n=qwert666@acat34.neoplus.adsl.tpnet.pl)
- # [09:06] * Quits: annevk (n=annevk@65.219.168.142) (Read error: 60 (Operation timed out))
- # [09:07] * Joins: KevinMarks (n=KevinMar@c-98-207-134-151.hsd1.ca.comcast.net)
- # [09:22] * Joins: heycam (n=cam@124-168-29-248.dyn.iinet.net.au)
- # [09:28] * Joins: jruderman__ (n=jruderma@ip68-5-179-249.oc.oc.cox.net)
- # [09:35] * Quits: sverrej_ (n=sverrej@89.10.27.86) (Read error: 110 (Connection timed out))
- # [09:38] * Quits: qwert666 (n=qwert666@acat34.neoplus.adsl.tpnet.pl) ("Leaving")
- # [09:45] * Quits: jruderman_ (n=jruderma@ip68-5-179-249.oc.oc.cox.net) (Read error: 110 (Connection timed out))
- # [09:46] * Joins: epeus (n=KevinMar@72.14.224.1)
- # [09:52] * Quits: KevinMarks (n=KevinMar@c-98-207-134-151.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
- # [09:59] <gDashiva> "Because of the number of legacy servers on the web (e.g. those that serve all files as text/plain) MIME-sniffing is an important compatibility feature."
- # [09:59] <gDashiva> Are these text/plain web servers related to hsivonen's transcoding proxies?
- # [10:03] * jmb^ is now known as jmb
- # [10:05] * Quits: shepazu (n=schepers@67-42-84-126.tukw.qwest.net) (Read error: 113 (No route to host))
- # [10:07] * Joins: sverrej (n=sverrej@pat-tdc.opera.com)
- # [10:10] * Joins: shepazu (n=schepers@71-35-137-131.tukw.qwest.net)
- # [10:16] * Joins: Maurice` (i=copyman@cc90688-a.emmen1.dr.home.nl)
- # [10:19] <Hixie> hsivonen: the most common errors i get are (1) mistyping the start tag (e.g. missing the leading <), and (2) getting hte wrong end tag.
- # [10:19] <Hixie> these two errors both cause an inordinate number of errors to be reported and none of them really say what the actual mistake was.
- # [10:20] <Hixie> e.g. <p> foo var title="">x</vsr> </p> and <p> <a href="">x</span> </p>
- # [10:20] <othermaciej> I had a similar experience with the validator
- # [10:21] <othermaciej> although the mistake was missing close "
- # [10:22] <Hixie> the wrong end tag for an inline element in particular cascades into an error for almost every block-level element in the tree from the point of the error on.
- # [10:22] <Hixie> which is exciting when the error is half way down the html5 spec
- # [10:25] * Joins: roc (n=roc@121-72-163-232.dsl.telstraclear.net)
- # [10:25] * Joins: aaronlev (n=chatzill@e179202129.adsl.alicedsl.de)
- # [10:26] <Hixie> first draft of Web Sockets has now been completely defined
- # [10:26] * Quits: aaronlev (n=chatzill@e179202129.adsl.alicedsl.de) (Client Quit)
- # [10:26] * Joins: aaronlev (n=chatzill@e179202129.adsl.alicedsl.de)
- # [10:27] <jacobolus> Hixie: that sounds great. I'll take a look tomorrow morning
- # [10:29] <Hixie> http://www.whatwg.org/specs/web-apps/current-work/#network
- # [10:38] <Hixie> Lachy_: just listend to the podcast on the web, and i think you did great!
- # [10:38] * Joins: Windstoss (n=wind@U8179.u.pppool.de)
- # [10:40] <hsivonen> Hixie: recorded http://bugzilla.validator.nu/show_bug.cgi?id=258
- # [10:40] <Hixie> cool
- # [10:41] * Lachy_ is now known as Lachy
- # [10:42] <Lachy> Hixie, really? I couldn't listen to it all. The sound of my own voice is irritating.
- # [10:48] * Joins: philipj (n=philipj@118.71.117.244)
- # [10:49] <Hixie> heh
- # [10:49] <Hixie> it was fine as far as i could tell :-)
- # [10:49] <Hixie> one's own voice is often found to irritate one
- # [10:50] <Lachy> I tend to say um and ah far too often, at least at the beginning
- # [10:50] <Lachy> I need to practice more
- # [10:50] <Hixie> eh, everyone does :-)
- # [10:50] <Hixie> you should hear my talks, i'm terrible
- # [10:50] <Lachy> have you got any recorded?
- # [10:53] * Joins: ROBOd (n=robod@89.122.216.38)
- # [10:53] * Joins: aaronlev_ (n=chatzill@e179202129.adsl.alicedsl.de)
- # [10:54] <Hixie> not publicly :-)
- # [10:56] <Hixie> right bed time
- # [10:56] <Hixie> nn
- # [10:59] <hsivonen> Lachy: It's a bit hard to comment, since I already know the topic, so I can't comment what it souded like to someone who doesn't.
- # [10:59] <hsivonen> Lachy: you did go a bit easy (non-controversially) on the XHTML vs. HTML question
- # [11:00] * Joins: jruderman (n=jruderma@ip68-5-179-249.oc.oc.cox.net)
- # [11:00] <Hixie> (wow, julian was fast at sending that complaint about the Web Socket Protocol)
- # [11:06] <Lachy> hsivonen, of course I did. If I said anything bad about XHTML, think of the complaints I'd be getting from certain people
- # [11:07] <Lachy> gotta go, bbl
- # [11:07] * Quits: Lachy (n=Lachlan@ti200710a340-0519.bb.online.no) ("This computer has gone to sleep")
- # [11:07] * Quits: deane (n=dean@121-72-184-140.dsl.telstraclear.net) (Remote closed the connection)
- # [11:09] * Quits: epeus (n=KevinMar@72.14.224.1) (Read error: 110 (Connection timed out))
- # [11:10] * Quits: aaronlev (n=chatzill@e179202129.adsl.alicedsl.de) (Read error: 104 (Connection reset by peer))
- # [11:11] <othermaciej> Hixie: specifying the bytes is not really helpful to implementors (I don't think anyone will put an array of hex values in their code instead of a string)
- # [11:11] * Quits: aaronlev_ (n=chatzill@e179202129.adsl.alicedsl.de) (Read error: 104 (Connection reset by peer))
- # [11:11] <hsivonen> othermaciej: for another part of the spec I did and later regretted
- # [11:12] <hsivonen> (not an array actually, but individual numbers)
- # [11:13] <othermaciej> yikes
- # [11:14] <othermaciej> I don't understand also why validating the response depends on details that are irrelevant from the HTTP point of view
- # [11:15] <othermaciej> that makes it harder to make a module for an existing web server that would implement this on the same port as the normal connection
- # [11:15] * Quits: jruderman__ (n=jruderma@ip68-5-179-249.oc.oc.cox.net) (Read error: 110 (Connection timed out))
- # [11:16] <othermaciej> seems like gratuitous draconianism (but maybe I am missing the motivation)
- # [11:17] <othermaciej> also the fact that it defaults to a weird port and doesn't rely on same-origin security at all partly misses the point of making it look like HTTP
- # [11:19] * Joins: Lachy (n=Lachlan@pat-tdc.opera.com)
- # [11:19] <othermaciej> I guess I can send email tomorrow
- # [11:19] * Quits: othermaciej (n=mjs@12.45.39.194)
- # [11:46] * Joins: mcarter (n=mcarter@c-24-6-178-241.hsd1.ca.comcast.net)
- # [11:46] <mcarter> good evening
- # [11:49] * Joins: webben (n=benh@nat/yahoo/x-2b990093dd6040e1)
- # [11:54] * Quits: gDashiva (n=noone@195.18.164.170) (Read error: 145 (Connection timed out))
- # [11:54] * Joins: gDashiva (n=noone@195.18.164.170)
- # [11:54] * gDashiva is now known as ggDashiva
- # [12:01] * Joins: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net)
- # [12:27] * Quits: roc (n=roc@121-72-163-232.dsl.telstraclear.net)
- # [12:27] * Joins: tndH (i=Rob@adsl-87-102-85-115.karoo.KCOM.COM)
- # [12:42] * Joins: zcorpan (n=zcorpan@pat.se.opera.com)
- # [13:05] * Joins: myakura (n=myakura@p1216-ipbf601marunouchi.tokyo.ocn.ne.jp)
- # [13:23] * Quits: webben (n=benh@nat/yahoo/x-2b990093dd6040e1)
- # [13:53] * Quits: zcorpan (n=zcorpan@pat.se.opera.com) (Read error: 104 (Connection reset by peer))
- # [13:57] * Joins: zcorpan (n=zcorpan@pat.se.opera.com)
- # [14:28] * Quits: mcarter (n=mcarter@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [14:28] * Quits: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [14:28] * Joins: mcarter (n=mcarter@c-24-6-178-241.hsd1.ca.comcast.net)
- # [14:29] * Joins: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net)
- # [14:31] * Joins: magnusrk (n=magnusrk@195.18.164.170)
- # [14:32] * Quits: jacobolus (n=jacobolu@c-24-6-178-241.hsd1.ca.comcast.net)
- # [14:37] * Joins: webben (n=benh@nat/yahoo/x-5d229739ee546016)
- # [14:38] * Joins: aroben (n=adamrobe@76.111.160.14)
- # [14:40] * Joins: aaronlev (n=chatzill@e179062009.adsl.alicedsl.de)
- # [14:43] * Joins: annevk (n=annevk@65.219.168.142)
- # [14:57] * Quits: magnusrk (n=magnusrk@195.18.164.170) ("leaving")
- # [14:58] * Joins: magnusrk (n=magnusrk@195.18.164.170)
- # [15:04] * Quits: ggDashiva (n=noone@195.18.164.170)
- # [15:07] <Windstoss> What is the browser supposed to do, when an author sets contenteditable for <title></title>?
- # [15:08] <annevk> Hixie, "their originating server" seems false, as it clearly allows cross-origin
- # [15:09] <annevk> Windstoss, make it editable?
- # [15:10] <zcorpan> Windstoss: same as any other element i guess
- # [15:11] * magnusrk is now known as gDashiva
- # [15:19] <zcorpan> Philip`: is there an easy way to sort the canvas results table so that tests that fail across the board are at the top, tests with 1 pass next, 2 passes next, and so forth?
- # [15:30] <Philip`> zcorpan: The easy way is to just write a script that sorts them based on the class names, I would expect
- # [15:31] <zcorpan> Philip`: ok
- # [15:33] <Philip`> zcorpan: probably something like http://philip.html5.org/misc/canvas-table-sort.txt but less rubbish
- # [15:37] <zcorpan> Philip`: thanks, you're faster than me :)
- # [15:39] <Philip`> JS needs an operator like Perl's <=> and cmp
- # [15:44] <Philip`> zcorpan: (Updated the script to give nicer output now)
- # [15:46] * Quits: aroben (n=adamrobe@unaffiliated/aroben)
- # [15:49] * Joins: jdandrea (n=jdandrea@ool-44c09d7b.dyn.optonline.net)
- # [15:50] <zcorpan> Philip`: thanks
- # [15:50] * Quits: Windstoss (n=wind@U8179.u.pppool.de) ("*plonk*")
- # [15:50] * Quits: jdandrea (n=jdandrea@ool-44c09d7b.dyn.optonline.net) (Client Quit)
- # [15:51] <zcorpan> http://simon.html5.org/dump/canvas-results-sorted.html
- # [15:52] <zcorpan> i think i'll go through the top ones and see if it makes sense to change the spec
- # [15:53] <Philip`> It'd probably be sensible to ignore the Excanvas column
- # [15:54] <zcorpan> yeah but it's mostly fail anyway :)
- # [15:55] <zcorpan> is it defined somewhere what should happen in general with too few or too many arguments?
- # [15:56] <Philip`> zcorpan: http://www.whatwg.org/specs/web-apps/current-work/multipage/infrastructure.html#common
- # [15:59] * Joins: csarven (n=csarven@on-irc.csarven.ca)
- # [16:01] * Quits: mpt (n=mpt@canonical/launchpad/mpt) (Read error: 113 (No route to host))
- # [16:02] <zcorpan> wonder if it would be useful to have a standard exception for not enough arguments
- # [16:02] <zcorpan> that is different from NOT_SUPPORTED_ERR
- # [16:03] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
- # [16:04] <annevk> if the use case is testing, no :)
- # [16:04] <gDashiva> WRONG_ARITY_ERR
- # [16:05] <zcorpan> well debugging for authors
- # [16:06] <zcorpan> "not enough arguments" is more helpful than "NOT_SUPPORTED_ERR" when the author looks in the error console to figure out why it doesn't work
- # [16:06] <annevk> usually exceptions have some message that could be more detailed
- # [16:06] <zcorpan> oh that's true
- # [16:06] <zcorpan> ok
- # [16:15] * Joins: aroben (n=adamrobe@76.111.160.14)
- # [16:18] * Joins: billmason (n=billmaso@ip192.unival.com)
- # [16:18] * Quits: myakura (n=myakura@p1216-ipbf601marunouchi.tokyo.ocn.ne.jp) ("Leaving...")
- # [16:21] * Quits: mcarter (n=mcarter@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [16:21] * Quits: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [16:21] * Joins: mcarter (n=mcarter@c-24-6-178-241.hsd1.ca.comcast.net)
- # [16:21] * Joins: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net)
- # [16:23] <zcorpan> hmm, is the imageData stuff not implemented yet?
- # [16:25] <annevk> it is
- # [16:25] <annevk> though in varying degree
- # [16:36] <zcorpan> now i wonder, should i post my notes to whatwg, public-html or file a bug?
- # [16:37] * zcorpan posts to whatwg
- # [16:38] * Quits: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de) (Remote closed the connection)
- # [16:39] <Philip`> zcorpan: Nobody implements it all, as far as I'm aware
- # [16:39] * Quits: mpt (n=mpt@canonical/launchpad/mpt) (Read error: 113 (No route to host))
- # [16:41] * Joins: KevinMarks (n=KevinMar@c-98-207-134-151.hsd1.ca.comcast.net)
- # [16:42] * Quits: aaronlev (n=chatzill@e179062009.adsl.alicedsl.de) ("ChatZilla 0.9.83 [Firefox 3.0/2008052906]")
- # [16:45] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
- # [17:13] * Joins: john_fallows (n=j_r_fall@ip-12-22-56-126.hqglobal.net)
- # [17:13] * Quits: Lachy (n=Lachlan@pat-tdc.opera.com) ("This computer has gone to sleep")
- # [17:18] <annevk> Hixie, yt? any idea whether we postponed the meeting to 10AM again?
- # [17:30] * Joins: Lachy (n=Lachlan@ti200710a340-0519.bb.online.no)
- # [17:31] <annevk> guess i'll be there at nine
- # [17:35] * Quits: KevinMarks (n=KevinMar@c-98-207-134-151.hsd1.ca.comcast.net) (Connection timed out)
- # [17:36] * Quits: zcorpan (n=zcorpan@pat.se.opera.com)
- # [17:54] * Quits: sverrej (n=sverrej@pat-tdc.opera.com) (Read error: 110 (Connection timed out))
- # [17:54] * Joins: jruderman_ (n=jruderma@ip68-5-179-249.oc.oc.cox.net)
- # [17:58] * Quits: philipj (n=philipj@118.71.117.244) (Remote closed the connection)
- # [18:01] * Joins: KevinMarks (n=KevinMar@nat/google/x-b135444eb4870eaa)
- # [18:11] * Quits: jruderman (n=jruderma@ip68-5-179-249.oc.oc.cox.net) (Read error: 110 (Connection timed out))
- # [18:12] * Quits: annevk (n=annevk@65.219.168.142) (Read error: 110 (Connection timed out))
- # [18:17] * Quits: weinig (n=weinig@12.45.39.194)
- # [18:19] * Joins: eseidel (n=eseidel@c-24-118-134-245.hsd1.mn.comcast.net)
- # [18:19] * Quits: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [18:20] * Joins: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net)
- # [18:22] * Joins: sverrej (n=sverrej@89.10.27.86)
- # [18:24] * Joins: annevk (n=annevk@131.107.204.126)
- # [18:24] <annevk> seems I was wrong, nobody here :/
- # [18:32] * Joins: jruderman (n=jruderma@ip68-5-179-249.oc.oc.cox.net)
- # [18:38] * Joins: gavin_ (n=gavin@firefox/developer/gavin)
- # [18:41] * Joins: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com)
- # [18:46] * Quits: jruderman_ (n=jruderma@ip68-5-179-249.oc.oc.cox.net) (Read error: 110 (Connection timed out))
- # [18:49] * Joins: maikmerten (n=maikmert@L9e42.l.pppool.de)
- # [18:51] * Quits: shepazu (n=schepers@71-35-137-131.tukw.qwest.net)
- # [18:55] * Quits: eseidel (n=eseidel@c-24-118-134-245.hsd1.mn.comcast.net) (Read error: 110 (Connection timed out))
- # [19:00] * Joins: aaronlev (n=chatzill@e179062009.adsl.alicedsl.de)
- # [19:08] * Joins: deane (n=dean@121-72-168-105.dsl.telstraclear.net)
- # [19:15] * Quits: webben (n=benh@nat/yahoo/x-5d229739ee546016) (Connection timed out)
- # [19:24] * Joins: weinig (n=weinig@12.45.39.194)
- # [19:26] * Quits: weinig (n=weinig@12.45.39.194) (Client Quit)
- # [19:26] * Quits: aroben (n=adamrobe@unaffiliated/aroben)
- # [19:26] * Joins: hdh (n=hdh@118.71.127.207)
- # [19:27] * Quits: [YaaL] (i=yaal@hell.pl) (Remote closed the connection)
- # [19:27] * Joins: YaaL (i=yaal@hell.pl)
- # [19:28] * Quits: hdh (n=hdh@118.71.127.207) (Remote closed the connection)
- # [19:30] * Joins: hdh (n=hdh@118.71.127.207)
- # [19:32] * Joins: primal1_ (n=primal1@pool-71-177-119-67.lsanca.fios.verizon.net)
- # [19:40] * Quits: KevinMarks (n=KevinMar@nat/google/x-b135444eb4870eaa) ("The computer fell asleep")
- # [19:41] * Joins: csarven- (n=csarven@on-irc.csarven.ca)
- # [19:43] <gsnedders> Hixie: What's the justification for not just using full HTTP/1.1 for WebSockets?
- # [19:45] <takkaria> it's the requirement to write a websockets server in only a few lines of code
- # [19:45] <takkaria> I believe, anyway
- # [19:46] <annevk> indeed
- # [19:46] <Hixie> right
- # [19:47] <gsnedders> peh. we already have perfectly good HTTP servers.
- # [19:47] <Hixie> i'm not writing a whole web server just to do a chat client
- # [19:47] <Hixie> the "perfectly good HTTP servers" don't do full duplex.
- # [19:47] <Hixie> cos HTTP isn't full duplex.
- # [19:49] * Joins: othermaciej (n=mjs@131.107.204.126)
- # [19:49] * Quits: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com) (Read error: 104 (Connection reset by peer))
- # [19:49] * Joins: weinig (n=weinig@131.107.204.126)
- # [19:49] * Joins: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com)
- # [19:50] <gsnedders> hmm, looking through the diff of spec-gen v. the CSS WG's postprocessor, a heckuva lot is just the difference between actually parsing it and serializing it v. rewriting parts of the document
- # [19:50] <gsnedders> brb (again)
- # [19:50] * Parts: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com)
- # [19:50] * Joins: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com)
- # [19:51] <gsnedders> (back)
- # [19:53] * Joins: KevinMarks (n=KevinMar@nat/google/x-61ef99face98e508)
- # [19:56] * Joins: starjive (i=beos@213-66-217-32-no30.tbcn.telia.com)
- # [19:57] * Joins: MikeSmith (n=MikeSmit@131.107.204.126)
- # [19:57] * Joins: shepazu (n=schepers@131.107.204.126)
- # [19:59] <Hixie> othermaciej: the reason for having an exact hex dump is to make absolutely sure that the remote end really is a WebSocket server and isn't being tricked into pretending to be one
- # [19:59] <gsnedders> Why claim to be an HTTP server?
- # [19:59] * Quits: maikmerten (n=maikmert@L9e42.l.pppool.de) (Remote closed the connection)
- # [20:00] <gsnedders> (i.e., get off ma lawn!)
- # [20:00] <Hixie> so that you can reuse the same port
- # [20:00] <othermaciej> Hixie: it seems like the most likely thing to trick would be a generic web server that doesn't actually support WebSocket at all
- # [20:01] <othermaciej> in which case, requiring a particular header order does not seem like a strong defense
- # [20:02] <othermaciej> but it may well make it more of a pain in the ass to implement it integrated into normal web servers
- # [20:02] <Hixie> well there's no way that a random HTTP server is going to be saying "Upgrade: WebSocket".
- # [20:04] <othermaciej> it seems unlikely that anything else could be made to produce something that looks like an http response with the right status code and response headers, but only with the headers in a different order
- # [20:04] <john_fallows> Hixie, looks you are making very good progress with the WebSocket section :)
- # [20:05] * Quits: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com) (Read error: 104 (Connection reset by peer))
- # [20:05] * Joins: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com)
- # [20:06] <Hixie> john_fallows: it's basically done :-)
- # [20:06] <john_fallows> i have a question about the step 11 in the handshake
- # [20:07] <Philip`> ...except for the implementations and tests and feedback and tutorials and ...
- # [20:07] <john_fallows> why use GET rather than OPTIONS?
- # [20:08] <Philip`> (Note to self: Hash tables don't work well when you have ten thousand items and the hash function always returns 0)
- # [20:10] * gsnedders is looking over an htmldiff of the real spec-gen's output and his own
- # [20:10] <gsnedders> no breakage that I've seen yet
- # [20:10] <Hixie> othermaciej: i don't think it's that unlikely. we'd still have to define error handling to a lot of detail, too, so it seems better to make that as simple as possible
- # [20:10] <Hixie> Philip`: i just meant the text in the spec :-)
- # [20:11] <gsnedders> (well, breakages due to one or two things not being supported yet)
- # [20:11] <Hixie> john_fallows: OPTIONS means "tell me about this resource", GET means "give me this resource"
- # [20:11] <Hixie> john_fallows: we don't want to know if it's possible, we just want to connect :-)
- # [20:13] <john_fallows> don't we need to wait for the 101 Switching Protocols to know if it's possible?
- # [20:18] * Quits: Maurice` (i=copyman@cc90688-a.emmen1.dr.home.nl) ("Disconnected...")
- # [20:18] <john_fallows> Hixie: sorry, did not prefix my last comment with your id
- # [20:19] <Hixie> well, it's like with a normal GET request right? You don't know if the URL exists before you call it.
- # [20:28] * Quits: csarven (n=csarven@on-irc.csarven.ca) (Nick collision from services.)
- # [20:28] * csarven- is now known as csarven
- # [20:29] <john_fallows> Hixie: yes, that applies to many different HTTP methods with request paths, such as GET, POST, PUT, DELETE, HEAD, OPTIONS, so it doesn't seem to imply the use of GET
- # [20:33] * Joins: gsnedders_ (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com)
- # [20:33] * Quits: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com) (Read error: 104 (Connection reset by peer))
- # [20:37] * gsnedders_ is now known as gsnedders
- # [20:39] <john_fallows> Hixie: OPTIONS implies we are negotiating capabilities of the conversation, which IMHO seems like the best fit for the WebSocket handshake
- # [20:40] <Hixie> OPTIONS isn't negotiation, it's asking for information
- # [20:41] <gsnedders> Now, I need help with a non-recursive algorithm
- # [20:42] <john_fallows> Hixie: you are right, OPTIONS is asking for meta-information about a resource, not the resource itself - that's why OPTIONS is a better fit over GET
- # [20:43] <Hixie> we want a resource here, not meta information
- # [20:43] <gsnedders> Namely, http://pastebin.com/m2f04a2a
- # [20:44] * Joins: epeus (n=KevinMar@nat/google/x-fbacbce0dae29326)
- # [20:44] <john_fallows> if we wanted to return the actual resource, wouldn't that be a 200 OK or similar with a request body?
- # [20:45] <Hixie> it is
- # [20:45] <annevk> gsnedders, hey, how far is your specgen?
- # [20:45] <Hixie> well
- # [20:45] <Hixie> it's a 101
- # [20:45] <Hixie> but 101 just means "i'm moving to another protocol to give you the 200 OK"
- # [20:45] <gsnedders> annevk: xref is more or less perfect, I just need to build the TOC from the internal structure and add section numbers
- # [20:46] <gsnedders> and that'll probably do for 1.0 (well, with some bugfixes)
- # [20:46] <annevk> is it available as web service already?
- # [20:46] <gsnedders> nope
- # [20:50] * Joins: Windstoss (n=wind@U8179.u.pppool.de)
- # [20:50] <john_fallows> Hixie: we do want meta-information about the resource, namely whether or not it supports Upgrade: WebSocket
- # [20:50] * Quits: KevinMarks (n=KevinMar@nat/google/x-61ef99face98e508) (Connection timed out)
- # [20:51] * Joins: Maurice` (i=copyman@cc90688-a.emmen1.dr.home.nl)
- # [20:51] <Hixie> john_fallows: no, we want it to actually upgrade
- # [20:52] <Hixie> it's like saying when you go to ikea to buy a cupboard, you're looking for the instructions to build the cupboard, not the cupboard itself
- # [20:56] <john_fallows> looking at the TLS Upgrade scenario in RFC2817 - http://www.ietf.org/rfc/rfc2817.txt
- # [20:57] <john_fallows> they specify Optional Upgrade using GET and Mandatory Upgrade using OPTIONS
- # [20:57] <gsnedders> Hixie: I want the pieces to build the cupboard from too, when I go to IKEA
- # [20:58] <john_fallows> the WebSocket upgrade is mandatory, which seems to imply using OPTIONS rather than GET
- # [21:06] <Hixie> 2817 is on crack
- # [21:06] <Hixie> note how nobody implements it
- # [21:08] * gsnedders passes Hixie some crack so he can be on it too
- # [21:08] <Hixie> no thanks :-)
- # [21:10] <gsnedders> 0.714s to xref HTML 5
- # [21:11] <Hixie> how long to parse? :-)
- # [21:11] <gsnedders> Far too long :)
- # [21:12] <gsnedders> 13.106s
- # [21:14] <Hixie> d'oh
- # [21:18] * Quits: Windstoss (n=wind@U8179.u.pppool.de) ("*plonk*")
- # [21:22] * Joins: dbaron (n=dbaron@corp-241.mountainview.mozilla.com)
- # [21:29] <john_fallows> if the handshake is forced to either Upgrade or fail, and can never return a non-upgraded response, i don't see how we can justify using GET over OPTIONS
- # [21:29] <Hixie> i don't see how we can justify using OPTIONS
- # [21:30] <john_fallows> sorry Hixie, don't mean to bug you on this, just trying to better understand the "is on crack" response earlier :)
- # [21:30] <Hixie> rfc2817 is just fundamentally not a sane spec
- # [21:30] <Hixie> and is not likely to convince me as an appeal to authority :-)
- # [21:31] <john_fallows> maybe if i understood why you think that, it would be easier for me to reach your perspective
- # [21:34] <Hixie> it makes fundamental mistakes like not having a way for pages to say that following a link must happen over an encrypted channel
- # [21:35] <john_fallows> is that relevant to the optional upgrade=GET, mandatory upgrade=OPTIONS?
- # [21:35] <Hixie> well, that's just another example of something i don't think is sane in that spec :-)
- # [21:36] <Hixie> i'm just saying that RFC2817 being a proponent of something or not isn't a useful technical argument
- # [21:36] <Philip`> Hixie: If you made the encoded length value be big-endian instead of little-endian, then it'd be compatible with Perl's "pack 'w'", which might be nice
- # [21:36] <john_fallows> ok, understood
- # [21:36] <john_fallows> well, we're not even delivering a pseudo 200 OK after the 101, because after the protocol switch we are both sending and receiving bytes on the wire, it is no longer about resource retrieval
- # [21:38] <Hixie> john_fallows: once it's upgraded, it is implied that it is OK :-)
- # [21:38] <Hixie> Philip`: hm, interesting
- # [21:39] <john_fallows> yeah, but you didn't actually retrieve any resource when it upgraded, you just changed the rules on how to communicate with that resource
- # [21:42] <Hixie> well, the full duplex socket is the resource
- # [21:42] <john_fallows> identified by the request URI
- # [21:44] <Hixie> right
- # [21:45] * Quits: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com) (Connection timed out)
- # [21:48] <john_fallows> so what are you saying? GET makes sense to you because you are "GET"ing the full duplex socket resource?
- # [21:54] <Hixie> right
- # [21:54] <Hixie> Philip`: i have switched to big endian
- # [21:58] <john_fallows> those semantics are not consistent with HTTP specification's definition of the GET method, to transfer an entity identified by request URI
- # [21:59] <Philip`> Hixie: It should multiply 'length' by 128 in each iteration, not by 'multiple'
- # [22:02] * Joins: csarven- (n=csarven@on-irc.csarven.ca)
- # [22:06] * Joins: eseidel (n=eseidel@c-24-118-134-245.hsd1.mn.comcast.net)
- # [22:08] * Quits: eseidel (n=eseidel@c-24-118-134-245.hsd1.mn.comcast.net) (Client Quit)
- # [22:10] * Quits: csarven (n=csarven@on-irc.csarven.ca) (Read error: 110 (Connection timed out))
- # [22:10] * Quits: starjive (i=beos@213-66-217-32-no30.tbcn.telia.com)
- # [22:14] * Quits: epeus (n=KevinMar@nat/google/x-fbacbce0dae29326) (Read error: 110 (Connection timed out))
- # [22:20] * Quits: ROBOd (n=robod@89.122.216.38) ("http://www.robodesign.ro")
- # [22:29] * Quits: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [22:29] * Joins: franksalim_ (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net)
- # [22:32] * Joins: KevinMarks (n=KevinMar@216.239.45.19)
- # [22:37] * Quits: Lachy (n=Lachlan@ti200710a340-0519.bb.online.no) ("Leaving")
- # [22:39] * Joins: Lachy (n=Lachlan@85.196.122.246)
- # [22:43] * Joins: epeus (n=KevinMar@nat/google/x-32c60e2bbcf0ee0f)
- # [22:46] <Hixie> Philip`: oops
- # [22:46] * Joins: hasather (n=hasather@ti0034a380-2730.bb.online.no)
- # [22:47] * Quits: mcarter (n=mcarter@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [22:47] * Quits: franksalim_ (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [22:47] * Joins: mcarter (n=mcarter@c-24-6-178-241.hsd1.ca.comcast.net)
- # [22:48] * Joins: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net)
- # [22:51] * Joins: gsnedders (n=gsnedder@cpc1-cmbg6-0-0-cust455.cmbg.cable.ntl.com)
- # [22:52] <gsnedders> Does anyone want to bitch about how bad http://pastebin.com/m3f6dd4f4 is?
- # [22:53] <gsnedders> That's my first attempt at a non-recursive implementation of that (due to the need to be able to cope with infinitely deep nested sections)
- # [22:53] <gsnedders> (which jgraham's online viewer will hit the recursion limit with)
- # [22:55] * Quits: KevinMarks (n=KevinMar@216.239.45.19) (Connection timed out)
- # [23:00] * Joins: qwert666 (n=qwert666@acah90.neoplus.adsl.tpnet.pl)
- # [23:02] <hsivonen> Hixie: in the binary math, shifting left may be more intuitive that multiplication
- # [23:07] * epeus is now known as KevinMarks
- # [23:08] <Hixie> true
- # [23:08] <Hixie> too busy to change it right now
- # [23:09] * Joins: roc (n=roc@202.0.36.64)
- # [23:09] * Joins: eseidel (n=eseidel@c-24-118-134-245.hsd1.mn.comcast.net)
- # [23:11] * Quits: mcarter (n=mcarter@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [23:11] * Quits: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [23:12] * Joins: franksalim (n=franksal@c-24-6-178-241.hsd1.ca.comcast.net)
- # [23:16] <Philip`> Nobody's going to implement it correctly - they'll all wrap at 2^31 or 2^32 or 2^64 or something
- # [23:16] * Quits: csarven- (n=csarven@on-irc.csarven.ca) ("http://www.csarven.ca")
- # [23:17] <Hixie> probably
- # [23:17] <Philip`> so maybe it should be defined so that a straightforward 32-bit implementation will work correctly, because nobody has a legitimate reason to send 4GB messages
- # [23:17] <Hixie> today
- # [23:17] <roc> 4GB ought to be enough for anyone
- # [23:17] <gsnedders> Hmm, my HD is bigger than that.
- # [23:17] * Hixie already deals with terabyte files
- # [23:18] <Philip`> You can split the data up into multiple messages
- # [23:18] <takkaria> Hixie: yes, but will you really want to send those files over a WebSocket?
- # [23:18] <annevk> couple of MB was enough for anyone at some point in the past
- # [23:18] <jgraham> gsnedders: Why re you using a deque?
- # [23:18] <annevk> even a couple of KB...
- # [23:19] <gsnedders> jgraham: Well, it probably doesn't make much difference on such a small outline (even as big as HTML 5)
- # [23:19] <Philip`> You don't really want to transmit 4.0GB of your 4.1GB file and then have the connection drop and have to resend the entire thing, so you'd always split it up and build some higher-level file transfer protocol on top of it
- # [23:19] <takkaria> if you're dealing with 4GB of data transfer at one point, you're better using BitTorrent or something else
- # [23:19] <takkaria> I thought WebSocket was there for chat applications and remote train control, not sending files
- # [23:19] <Hixie> we can certainly define a limit after which the client should abort the connection
- # [23:19] <Hixie> that's what i tried doing on the last checkin
- # [23:19] <Philip`> gsnedders: Replace deque with list, and replace extendleft with push, and replace popleft with pop
- # [23:20] <Philip`> s/push/append/ or whatever
- # [23:20] <jgraham> gsnedders: what Philip` said
- # [23:20] <Philip`> gsnedders: Also have a single list of (section, indent) tuples, instead of two lists
- # [23:20] <gsnedders> Hey, I'm not a CS student!
- # [23:20] <jgraham> gsnedders: Me neither :)
- # [23:21] <Philip`> gsnedders: (unless that'd make the implementation ugly, but I don't see obvious problems)
- # [23:21] <gsnedders> Philip`: Well, extend not push
- # [23:21] * jgraham was going to write you an implementation which just walked the tree iteratively
- # [23:21] <Philip`> gsnedders: Oh, right, I meant s/push/extend/
- # [23:22] <jgraham> But that's only really easier if you have parent pointers and I don't know if you do
- # [23:22] <gsnedders> lxml has _Element.parent
- # [23:23] <Philip`> takkaria: I'd be pretty worried if I was a passenger on a train that was being controlled by Web Sockets :-(
- # [23:23] <jgraham> gsnedders: But a section is not an lxml element, right?
- # [23:23] <gsnedders> jgraham: right
- # [23:23] <gsnedders> jgraham: It's a subclass of list, and has section.header and section.parent
- # [23:24] <gsnedders> You need to be able to get the parent to implement the algorithm anyway
- # [23:26] <gsnedders> Philip`: How can I do something like l18?
- # [23:26] <takkaria> Philip`: not if you were a fly. :)
- # [23:27] <gsnedders> Philip`: All I can think to do is a loop over section and append a truple for each
- # [23:28] <Philip`> gsnedders: section_and_indents_list.extend((s, indent+2) for s in sections) perhaps
- # [23:28] <jgraham> gsnedders sections.extend((sec, indent+2) for sec on section)
- # [23:28] * Joins: mcarter (n=mcarter@c-24-6-178-241.hsd1.ca.comcast.net)
- # [23:28] <gsnedders> ah, I don't often think of that, and not with truples
- # [23:28] <Philip`> s/sections/section/
- # [23:28] <jgraham> s/on/in/ of course
- # [23:30] <gsnedders> I've done something wrong.
- # [23:30] <Hixie> q+
- # [23:30] <Hixie> er
- # [23:30] <Hixie> wc
- # [23:36] <gsnedders> That just looks messy.
- # [23:36] <gsnedders> http://pastebin.com/m7d7fc0a1
- # [23:38] <gsnedders> 22*C here tomorrow.
- # [23:38] <Hixie> http://languagelog.ldc.upenn.edu/myl/TranslateServerError.jpg
- # [23:38] <Hixie> ...
- # [23:39] <hsivonen> Hixie: that's awesome
- # [23:39] <gsnedders> I think that's a bug.
- # [23:39] <roc> owah
- # [23:40] <roc> could it be photoshopped?
- # [23:40] <Hixie> could be
- # [23:40] <Hixie> wouldn't surprise me if it was real
- # [23:40] * Parts: hasather (n=hasather@ti0034a380-2730.bb.online.no)
- # [23:41] <gsnedders> http://xkcd.com/331/
- # [23:41] * Joins: hasather (n=hasather@ti0034a380-2730.bb.online.no)
- # [23:41] <roc> it could be real, but a *lot* of Chinese people know English these days, especially ones involved in the Olympics I guess
- # [23:42] <roc> so it would have to be a monumental stuff-up
- # [23:42] <roc> which is of course entirely possible
- # [23:42] <gsnedders> Like, committing code that breaks everything thinking it's a tiny fix and can't possibly break anything?
- # [23:43] <jgraham> gsnedders: You should do something like item = sections.pop(); section, indent = item
- # [23:43] <takkaria> there's a massive screen in Manchester, UK, right in the middle of town, which every now and again has Windows error boxes about media types not being supported
- # [23:43] <gsnedders> jgraham: or just section, indent = sections.pop()
- # [23:43] <jgraham> Yeah, or just that :)
- # [23:43] <gsnedders> jgraham: Myself coding half asleep isn't good :)
- # [23:44] <gsnedders> Actually building the TOC, inevitably, is more complex.
- # [23:47] <gsnedders> I also need to deal with no-toc
- # [23:49] <gsnedders> How come I need reversed() like this, but not with the non-recursive algorithm?
- # [23:50] <jgraham> Do you mean not with the recursive algorithm?
- # [23:50] <gsnedders> yeah
- # [23:51] <gsnedders> I _am_ half asleep, remember :P
- # [23:51] <jgraham> Because at each stage you want to pick the first child of the current section to serialize next which means that it has to go on the far right of the array so it is popped off next
- # [23:52] <gsnedders> duh.
- # [23:52] <jgraham> Alternatively, if there are no children, you want the next sibling of the current node, so that has to be one to the left of the current node in the array
- # [23:52] <gsnedders> Because I push and not pop now.
- # [23:53] * gsnedders is really proving how silly his is when tired
- # [23:53] * gsnedders heads off to sleep
- # [23:53] <jgraham> His what is ? ;)
- # [23:53] <gsnedders> :)
- # [23:53] <gsnedders> s/his/he/
- # [23:54] <jgraham> Did anyone mention http://www.toolness.com/wp/?p=52 already?
- # Session Close: Fri Jul 04 00:00:00 2008
The end :)