Options:
- # Session Start: Tue Sep 03 00:00:00 2013
- # Session Ident: #whatwg
- # [00:03] * Quits: malcolmva (~malcolmva@c-67-180-203-233.hsd1.ca.comcast.net) (Quit: Leaving)
- # [00:06] * Quits: dfreedm (uid7859@gateway/web/irccloud.com/x-wvmbcmuzuynaxwms) (Quit: Connection closed for inactivity)
- # [00:18] * Joins: tantek (~tantek@50-0-164-83.dsl.dynamic.sonic.net)
- # [00:20] * Joins: marcosc (~marcosc@bl7-117-22.dsl.telepac.pt)
- # [00:27] * Joins: birtles (~chatzilla@61-121-216-2.bitcat.net)
- # [00:27] * Joins: juliet (~css@unaffiliated/css)
- # [00:37] * Joins: kinetik (~kinetik@121.99.54.101)
- # [00:42] * Quits: yorick (~yorick@oftn/member/yorick) (Remote host closed the connection)
- # [00:43] * Quits: rmichnik (~quassel@177.135.228.218) (Ping timeout: 245 seconds)
- # [00:46] * Joins: TheGallery (~TheGaller@athedsl-212223.home.otenet.gr)
- # [00:54] * Quits: zkis (~zkis@178-55-63-127.bb.dnainternet.fi) (Ping timeout: 260 seconds)
- # [01:01] * Quits: TheGallery (~TheGaller@athedsl-212223.home.otenet.gr) (Quit: Leaving)
- # [01:01] * heycam|away is now known as heycam
- # [01:05] * Joins: taptapdan (~taptapdan@c75-111-74-51.erkacmtk01.ca.dh.suddenlink.net)
- # [01:06] * Quits: taptapdan (~taptapdan@c75-111-74-51.erkacmtk01.ca.dh.suddenlink.net) (Client Quit)
- # [01:15] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 246 seconds)
- # [01:16] * Quits: kinetik (~kinetik@121.99.54.101) (Ping timeout: 264 seconds)
- # [01:24] * Quits: tantek (~tantek@50-0-164-83.dsl.dynamic.sonic.net) (Quit: tantek)
- # [01:33] * Quits: marcosc (~marcosc@bl7-117-22.dsl.telepac.pt) (Remote host closed the connection)
- # [01:39] * Joins: kinetik (~kinetik@121.99.174.7)
- # [01:44] * Quits: kinetik (~kinetik@121.99.174.7) (Quit: leaving)
- # [01:44] * Joins: kinetik (~kinetik@121.99.174.7)
- # [01:53] * Joins: jdaggett (~jdaggett@61-121-216-2.bitcat.net)
- # [01:57] * Joins: rmichnik (~quassel@177.97.42.101.dynamic.adsl.gvt.net.br)
- # [02:02] * Quits: rmichnik (~quassel@177.97.42.101.dynamic.adsl.gvt.net.br) (Read error: Connection reset by peer)
- # [02:18] * Joins: kriskowal (~kriskowal@24-205-76-28.dhcp.psdn.ca.charter.com)
- # [02:24] * Joins: tantek (~tantek@50-0-164-83.dsl.dynamic.sonic.net)
- # [02:34] * Joins: garciawebdev (~garciaweb@11-223-235-201.fibertel.com.ar)
- # [02:48] * Quits: smaug____ (~chatzilla@a91-154-47-240.elisa-laajakaista.fi) (Ping timeout: 245 seconds)
- # [03:02] * Joins: dwim (~dwim@210.94.41.89)
- # [03:05] * heycam is now known as heycam|away
- # [03:09] * Quits: garciawebdev (~garciaweb@11-223-235-201.fibertel.com.ar) (Remote host closed the connection)
- # [03:10] * Joins: garciawebdev (~garciaweb@11-223-235-201.fibertel.com.ar)
- # [03:10] * Quits: MikeSmith (~mike@sideshowbarker.net) (Ping timeout: 264 seconds)
- # [03:10] * Quits: jannis_ (~Adium@xdsl-188-155-17-213.adslplus.ch) (Quit: Leaving.)
- # [03:11] * Joins: MikeSmith (~mike@sideshowbarker.net)
- # [03:14] * heycam|away is now known as heycam
- # [03:25] * Quits: garciawebdev (~garciaweb@11-223-235-201.fibertel.com.ar) (Remote host closed the connection)
- # [03:26] * Joins: garciawebdev (~garciaweb@11-223-235-201.fibertel.com.ar)
- # [03:26] * Quits: garciawebdev (~garciaweb@11-223-235-201.fibertel.com.ar) (Read error: Connection reset by peer)
- # [03:30] * Joins: Goplat (~goplat@reactos/developer/Goplat)
- # [03:36] * Quits: yoichio_ (yoichio@nat/google/x-lhqkjueawchhqxhn) (Ping timeout: 256 seconds)
- # [03:42] * Quits: vitorpacheco (~vitor@189-105-71-176.user.veloxzone.com.br) (Read error: Connection reset by peer)
- # [04:12] * heycam is now known as heycam|away
- # [04:44] * Parts: juliet (~css@unaffiliated/css)
- # [05:02] * Joins: [[zz]] (~q@node-490.pool-125-25.dynamic.totbb.net)
- # [05:17] * Joins: yoshu (~josh@174-21-234-55.tukw.qwest.net)
- # [05:24] * Quits: bacilla (~karolis@unaffiliated/velkam) (Ping timeout: 264 seconds)
- # [05:35] * heycam|away is now known as heycam
- # [05:54] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
- # [05:55] <zcorpan> SteveF: man that is going to kill my poor macbook :-)
- # [05:56] * Quits: yoshu (~josh@174-21-234-55.tukw.qwest.net) (Quit: yoshu)
- # [06:01] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Remote host closed the connection)
- # [06:17] * Quits: [[zz]] (~q@node-490.pool-125-25.dynamic.totbb.net) (Remote host closed the connection)
- # [06:32] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
- # [06:33] * Quits: diffalot (~papyroman@c-76-107-128-104.hsd1.ms.comcast.net) (Changing host)
- # [06:33] * Joins: diffalot (~papyroman@unaffiliated/papyromancer)
- # [06:39] * Joins: zcorpan_ (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
- # [06:39] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Read error: Connection reset by peer)
- # [06:49] * Quits: zcorpan_ (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Remote host closed the connection)
- # [06:50] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
- # [06:54] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 256 seconds)
- # [07:14] * Quits: Goplat (~goplat@reactos/developer/Goplat) (Remote host closed the connection)
- # [07:28] * Joins: Areks (~Areks@rs.gridnine.com)
- # [07:37] * Joins: Cromulent (~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com)
- # [07:51] * Joins: zdobersek (~zdobersek@cpe-77.38.31.63.cable.t-1.si)
- # [07:53] <gsnedders> jgraham: I guess the GH workflow would be PRs to me on the PR branch. Ergh.
- # [07:53] <gsnedders> jgraham: But idk if I know the spec well enough and/or have the time.
- # [07:54] <gsnedders> jgraham: Whereas you probably have an employer kean on you getting them into the testsuite. :)
- # [08:03] * Joins: annevk (~annevk@2.31.25.182)
- # [08:05] * Joins: SteveF (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com)
- # [08:06] * Quits: kriskowal (~kriskowal@24-205-76-28.dhcp.psdn.ca.charter.com) (Quit: kriskowal)
- # [08:12] * Joins: zkis (~zkis@2001:998:22:0:dcf7:4eb3:4b80:7c01)
- # [08:24] * Joins: Ms2ger (~Ms2ger@193.190.253.150)
- # [08:34] * Joins: sedovsek (~robert@89.143.12.238)
- # [08:39] * Joins: mitemitreski (~mitemitre@212.120.17.179)
- # [08:42] * Quits: sedovsek (~robert@89.143.12.238) (Quit: sedovsek)
- # [08:43] * Joins: sedovsek (~robert@89.143.12.238)
- # [08:45] * Quits: j_wright (~jwright@ip70-173-127-54.lv.lv.cox.net) (Ping timeout: 240 seconds)
- # [08:56] * Joins: hasather (~hasather@cm-84.210.170.16.getinternet.no)
- # [08:58] * Quits: SteveF (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com) (Ping timeout: 246 seconds)
- # [09:00] * Quits: hasather (~hasather@cm-84.210.170.16.getinternet.no) (Ping timeout: 245 seconds)
- # [09:01] * Joins: zcorpan (~zcorpan@94.234.170.168)
- # [09:02] * Joins: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt)
- # [09:07] * Quits: Cromulent (~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginmedia.com) (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/)
- # [09:12] * heycam is now known as heycam|away
- # [09:14] * Quits: zcorpan (~zcorpan@94.234.170.168) (Remote host closed the connection)
- # [09:15] * Joins: zcorpan (~zcorpan@c-5eeaaaa8-74736162.cust.telenor.se)
- # [09:15] * Joins: SteveF (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com)
- # [09:17] * Joins: Smylers (~smylers@81.143.60.194)
- # [09:19] * Quits: zcorpan (~zcorpan@c-5eeaaaa8-74736162.cust.telenor.se) (Ping timeout: 240 seconds)
- # [09:28] * Joins: [[zz]] (~q@node-490.pool-125-25.dynamic.totbb.net)
- # [09:38] * Joins: rego (~rego@231.193.27.77.dynamic.mundo-r.com)
- # [09:42] * Quits: MrTango (~maik@146-52-135-207-dynip.superkabel.de) (Ping timeout: 245 seconds)
- # [09:50] * heycam|away is now known as heycam
- # [09:50] * Joins: didi-g (~DIDi@88-149-142-91.v4.ngi.it)
- # [09:50] * Quits: didi-g (~DIDi@88-149-142-91.v4.ngi.it) (Client Quit)
- # [09:51] * Joins: didi-g (~DIDi@88-149-142-91.v4.ngi.it)
- # [09:52] * Quits: didi-g (~DIDi@88-149-142-91.v4.ngi.it) (Client Quit)
- # [09:53] * Joins: didi-g (~DIDi@88-149-142-91.v4.ngi.it)
- # [09:54] * Quits: didi-g (~DIDi@88-149-142-91.v4.ngi.it) (Client Quit)
- # [09:56] * Joins: didi-g (~DIDi@88-149-142-91.v4.ngi.it)
- # [09:58] * Quits: didi-g (~DIDi@88-149-142-91.v4.ngi.it) (Client Quit)
- # [09:58] * Quits: SteveF (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com) (Ping timeout: 246 seconds)
- # [10:08] * Joins: zcorpan (~zcorpan@94.234.170.168)
- # [10:12] * Joins: baku (~baku@2-236-39-253.ip231.fastwebnet.it)
- # [10:17] * Quits: jdaggett (~jdaggett@61-121-216-2.bitcat.net) (Ping timeout: 256 seconds)
- # [10:23] * Quits: Lachy (~textual@cm-84.215.104.248.getinternet.no) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
- # [10:24] * Quits: zcorpan (~zcorpan@94.234.170.168) (Ping timeout: 245 seconds)
- # [10:27] * Joins: Lachy (~textual@cm-84.215.104.248.getinternet.no)
- # [10:30] * Quits: Lachy (~textual@cm-84.215.104.248.getinternet.no) (Client Quit)
- # [10:31] * Joins: tomasf (~tomasf@77.72.97.10.c.fiberdirekt.net)
- # [10:33] * Quits: annevk (~annevk@2.31.25.182) (Remote host closed the connection)
- # [10:34] * Joins: zcorpan (~zcorpan@94.234.170.177)
- # [10:36] * Joins: nonge_ (~nonge@p5082A960.dip0.t-ipconnect.de)
- # [10:39] * Joins: darobin (~darobin@78.109.80.74)
- # [10:40] * Quits: nonge (~nonge@p5082BC94.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
- # [10:43] * Quits: zcorpan (~zcorpan@94.234.170.177) (Ping timeout: 240 seconds)
- # [10:45] * Joins: SteveF (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com)
- # [10:45] * Quits: birtles (~chatzilla@61-121-216-2.bitcat.net) (Quit: ChatZilla 0.9.90-rdmsoft [XULRunner 1.9.0.17/2009122204])
- # [10:50] <jgraham> Ms2ger: Achievement unlocked: used all of map, filter and reduce in a single expression
- # [10:50] <jgraham> gsnedders: It could be. That would be terrible though
- # [10:51] <Ms2ger> jgraham, very much Aryeh's achievement :)
- # [10:51] * Joins: zcorpan (~zcorpan@c-5eeaaa5c-74736162.cust.telenor.se)
- # [10:52] * Joins: annevk (~annevk@207.218.72.65)
- # [10:54] <annevk> When is heycam going to make IDL a Living Standard already?
- # [10:54] <heycam> (yeah gosh)
- # [10:54] <annevk> v1/v2, everyone implements v2 anyway
- # [10:54] <annevk> heycam!
- # [10:54] <heycam> hi!
- # [10:54] <heycam> Living Standard in CVS
- # [10:54] <heycam> undead standard
- # [10:55] <annevk> hah, CVS
- # [10:55] <annevk> I can teach you some GitHub if you want :p
- # [10:55] <heycam> pfft
- # [10:55] <annevk> heycam: about IDL, we have ByteString and [EnforceUTF16] and they're supposedly doing the same thing, but different
- # [10:56] <Ms2ger> You can even get some idl.spec.whatwg.org
- # [10:56] <annevk> heycam: e.g. they both coerce the input to a different type, which is arguably what DOMString, long, etc. do too
- # [10:56] <annevk> heycam: well, you didn't spec [EnforceUTF16] that way, which is kinda annoying and which I think is why we want to make that a type
- # [10:57] <heycam> annevk, so they should be the same kind of thing
- # [10:57] <annevk> heycam: if we don't want to make that a type, we should maybe drop ByteString and [EnforceUTF16] and just deal with it at the spec level... not sure that's necessarily great
- # [10:58] * heycam brb phone
- # [10:58] <Ms2ger> bz may feel differently
- # [10:59] <jgraham> Ms2ger: r+ but I didn't check tht you were actually using idlharness correctly, only that the code you posted would implement the parts of the spec that you quoted if you were using the datastructures correctly\
- # [10:59] <Ms2ger> jgraham, the DOM/HTML tests seem to pass, so I'm going to claim it's correct :)
- # [10:59] <annevk> ByteString = code units -> bytes; [EnforceUTF16] DOMString = code units -> mapped code units (whereas I wanted Unicode scalar values)
- # [11:00] <annevk> heycam: ^
- # [11:00] <annevk> Ms2ger: about what?
- # [11:00] <jgraham> Ms2ger: Right, I think what I checked, plus some passing tests is convincing
- # [11:00] <jgraham> +,
- # [11:00] <Ms2ger> annevk, the types thing, but maybe I misunderstood you
- # [11:02] <Ms2ger> jgraham, thanks
- # [11:03] <heycam> annevk, yeah I can see it from that perspective. (was just thinking that before the phone rang.)
- # [11:03] <annevk> Ms2ger: https://www.w3.org/Bugs/Public/show_bug.cgi?id=22808 is a pretty pointless comment... We often "break" something that works and we do that because of X. So if you don't give an argument against X...
- # [11:03] <heycam> annevk, I'm sympathetic to the argument of not having ByteString given it's not likely to be used elsewhere
- # [11:03] <heycam> whereas [EnforceUTF16] sounds like something that could be more generally useful
- # [11:04] <heycam> btw I'm going to be in the london office for the few days before the summit
- # [11:04] <annevk> heycam: that's awesome, but I won't be in London, but I'll be in Brussels
- # [11:04] <heycam> oh =P
- # [11:04] <heycam> ok
- # [11:05] <annevk> TAG is meeting the days leading up to it in Boston...
- # [11:05] * Joins: KevinMarks (~KevinMark@c-71-204-145-244.hsd1.ca.comcast.net)
- # [11:06] <heycam> I'll see you in Brussels then hopefully
- # [11:06] <heycam> oh, gotta go; maybe back later
- # [11:06] <annevk> Okay, so say we remove ByteString and deal with it in prose. Can we make the output of EnforceUTF16 Unicode scalar values?
- # [11:06] * heycam is now known as heycam|away
- # [11:09] * Joins: Lachy (~textual@213.166.174.2)
- # [11:09] <annevk> Hah, whenever I meet heycam|away on IRC, it's for 5 minutes and he typically has a call or meeting during that :-)
- # [11:10] <Ms2ger> jgraham, oh, and a "merge this PR" button in critic would be nice :)
- # [11:10] * Joins: smaug____ (~chatzilla@a91-154-47-240.elisa-laajakaista.fi)
- # [11:12] <jgraham> Ms2ger: Indeed, but when I tried to add one I couldn't get the authentication right
- # [11:12] <jgraham> I guess I could just use the github account of the critic instance itself
- # [11:15] * Ms2ger grumbles at the bbc
- # [11:16] <jgraham> Ms2ger: You've started reading the Telegraph or something?
- # [11:16] <Ms2ger> Nah
- # [11:17] * Quits: KevinMarks (~KevinMark@c-71-204-145-244.hsd1.ca.comcast.net) (Quit: The computer fell asleep)
- # [11:17] <Ms2ger> I'm well in range of the radio 4 LW signal, but due to "rights restrictions", I can't listen online
- # [11:17] * Joins: KevinMarks (~KevinMark@c-71-204-145-244.hsd1.ca.comcast.net)
- # [11:17] * Joins: TheGallery (~TheGaller@athedsl-211343.home.otenet.gr)
- # [11:17] <jgraham> To sport or something? Usually you can listen to the radio online
- # [11:18] <Ms2ger> Cricket
- # [11:18] <jgraham> Ah
- # [11:18] <jgraham> Yeah, not sure that's the BBC's fault really
- # [11:18] <jgraham> I mean it is obviously stupid, but they get sold region-restricted rights
- # [11:19] * Ms2ger grumbles at some unidentified party
- # [11:19] <jgraham> Very annoying
- # [11:22] * Quits: KevinMarks (~KevinMark@c-71-204-145-244.hsd1.ca.comcast.net) (Ping timeout: 260 seconds)
- # [11:38] * Quits: zcorpan (~zcorpan@c-5eeaaa5c-74736162.cust.telenor.se) (Ping timeout: 245 seconds)
- # [11:39] * Joins: MrTango (~maik@146-52-135-207-dynip.superkabel.de)
- # [11:48] * Joins: TheOtherGallery (~TheGaller@athedsl-211343.home.otenet.gr)
- # [11:48] * Quits: TheOtherGallery (~TheGaller@athedsl-211343.home.otenet.gr) (Remote host closed the connection)
- # [11:48] * Joins: zcorpan (~zcorpan@94.234.170.203)
- # [11:49] * Quits: TheGallery (~TheGaller@athedsl-211343.home.otenet.gr) (Quit: Leaving)
- # [11:50] * Joins: TheGallery (~TheGaller@athedsl-211343.home.otenet.gr)
- # [11:57] <annevk> Man, token-based security people are at it again on public-webappsec
- # [11:57] <annevk> I wonder if anyone else here is subscribed to that list...
- # [11:59] <Ms2ger> Not me
- # [12:01] * Joins: roc (~chatzilla@121.98.230.221)
- # [12:09] * Quits: [[zz]] (~q@node-490.pool-125-25.dynamic.totbb.net) (Ping timeout: 245 seconds)
- # [12:10] * Joins: [[zz]] (~q@node-490.pool-125-25.dynamic.totbb.net)
- # [12:11] <darobin> me neither
- # [12:12] <Ms2ger> Ah, darobin
- # [12:12] <Ms2ger> Back from vacation? :)
- # [12:12] <darobin> Ms2ger!
- # [12:12] <darobin> I'm still pondering that one
- # [12:15] <jgraham> Sounds like France
- # [12:17] * Joins: vitorpacheco (~vitor@189-105-71-176.user.veloxzone.com.br)
- # [12:17] * Joins: adactio (~adactio@host213-123-197-180.in-addr.btopenworld.com)
- # [12:22] * Quits: TheGallery (~TheGaller@athedsl-211343.home.otenet.gr) (Quit: Leaving)
- # [12:37] * Quits: zcorpan (~zcorpan@94.234.170.203) (Ping timeout: 240 seconds)
- # [12:46] * Quits: Garbee (~Garbee@lb1.cluster.grephix.nl) (Read error: Connection reset by peer)
- # [12:47] * Joins: Garbee (~Garbee@lb1.cluster.grephix.nl)
- # [12:47] * Garbee is now known as Guest61380
- # [12:59] * Joins: jannis_ (~Adium@xdsl-188-155-17-213.adslplus.ch)
- # [13:09] * Joins: hasather (~hasather@cm-84.210.170.16.getinternet.no)
- # [13:22] * Joins: charl_ (~charl@2001:67c:2564:524:92b1:1cff:fe89:ae5)
- # [13:29] * Quits: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt) (Read error: Connection reset by peer)
- # [13:32] * Quits: Ms2ger (~Ms2ger@193.190.253.150) (Read error: Operation timed out)
- # [13:33] * Joins: zcorpan (~zcorpan@94.234.170.45)
- # [13:34] * Quits: hasather (~hasather@cm-84.210.170.16.getinternet.no) (Remote host closed the connection)
- # [13:35] * Joins: hasather (~hasather@cm-84.210.170.16.getinternet.no)
- # [13:38] * Guest61380 is now known as Garbee
- # [13:39] * Quits: hasather (~hasather@cm-84.210.170.16.getinternet.no) (Ping timeout: 264 seconds)
- # [13:41] * Joins: felipeduardo (~felipedua@189.115.44.34)
- # [13:50] * Joins: Ms2ger (~Ms2ger@193.190.253.150)
- # [13:53] * Joins: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt)
- # [14:03] * Joins: cheron (~cheron@unaffiliated/cheron)
- # [14:04] <annevk> Anyone recall when Hixie_ and I discussed how to write down tasks in Fetch?
- # [14:05] <annevk> Most recent discussion that is, not the one Google returns in March...
- # [14:06] * Joins: jdaggett (~jdaggett@y230006.dynamic.ppp.asahi-net.or.jp)
- # [14:10] * Quits: zcorpan (~zcorpan@94.234.170.45) (Remote host closed the connection)
- # [14:11] * Quits: jdaggett (~jdaggett@y230006.dynamic.ppp.asahi-net.or.jp) (Client Quit)
- # [14:12] * Quits: reyre_ (~reyre@CPE7cb21b1e2cf4-CM7cb21b1e2cf1.cpe.net.cable.rogers.com) (Remote host closed the connection)
- # [14:12] * Joins: jdaggett (~jdaggett@y230006.dynamic.ppp.asahi-net.or.jp)
- # [14:12] * Joins: reyre (~reyre@CPE7cb21b1e2cf4-CM7cb21b1e2cf1.cpe.net.cable.rogers.com)
- # [14:14] * Joins: zcorpan (~zcorpan@94.234.170.45)
- # [14:15] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: :tiuQ tiuq sah woclrak)
- # [14:15] * Joins: karlcow (~karl@nerval.la-grange.net)
- # [14:16] * Quits: reyre (~reyre@CPE7cb21b1e2cf4-CM7cb21b1e2cf1.cpe.net.cable.rogers.com) (Read error: Operation timed out)
- # [14:17] <zcorpan> anyone know if it's possible to achieve this with css? http://software.hixie.ch/utilities/js/live-dom-viewer/saved/2504
- # [14:17] <zcorpan> (i.e. what the script does)
- # [14:17] * Quits: zcorpan (~zcorpan@94.234.170.45) (Remote host closed the connection)
- # [14:17] * Quits: zkis (~zkis@2001:998:22:0:dcf7:4eb3:4b80:7c01) (Ping timeout: 245 seconds)
- # [14:19] * Joins: zcorpan (~zcorpan@94.234.170.45)
- # [14:21] * Quits: zcorpan (~zcorpan@94.234.170.45) (Remote host closed the connection)
- # [14:24] <annevk> Found it: http://krijnhoetmer.nl/irc-logs/whatwg/20130723#l-734
- # [14:32] * Joins: yorick (~yorick@oftn/member/yorick)
- # [14:32] * Joins: jreading (Adium@nat/novell/x-oxdncmjkwewzmnxd)
- # [14:32] * Parts: jreading (Adium@nat/novell/x-oxdncmjkwewzmnxd)
- # [14:36] * Quits: Kolombiken (~Adium@94.137.124.2) (Read error: Connection reset by peer)
- # [14:36] * Joins: Kolombiken1 (~Adium@gateway.creuna.se)
- # [14:45] * Joins: hasather (~hasather@cm-84.210.170.16.getinternet.no)
- # [14:46] * Quits: rego (~rego@231.193.27.77.dynamic.mundo-r.com) (Remote host closed the connection)
- # [14:47] <annevk> Fetch thing is https://www.w3.org/Bugs/Public/show_bug.cgi?id=22387 now
- # [14:48] * Kolombiken1 is now known as Kolombiken
- # [14:49] * Quits: hasather (~hasather@cm-84.210.170.16.getinternet.no) (Ping timeout: 240 seconds)
- # [14:57] * Joins: tobie_ (~tobielang@25-176.199-178.cust.bluewin.ch)
- # [14:58] * Joins: decotii (~decotii@hq.croscon.com)
- # [15:15] <annevk> matjas: clearly we need @spaceatkins as a fake @tabatkins
- # [15:15] <Ms2ger> annevk, so you're fake Alex?
- # [15:15] <matjas> oh god, please make this happen internets
- # [15:16] <annevk> Ms2ger: your logic is infallible
- # [15:18] * Joins: zcorpan (~zcorpan@80.232.109.46)
- # [15:20] * Joins: TallTed (~Thud@63.119.36.36)
- # [15:21] <jgraham> At least it would be clear that spaceatkins was better than tabatkins
- # [15:23] * Joins: krawchyk (~krawchyk@65.220.49.251)
- # [15:23] * Quits: krawchyk (~krawchyk@65.220.49.251) (Remote host closed the connection)
- # [15:24] * Joins: krawchyk (~krawchyk@65.220.49.251)
- # [15:24] * Joins: benbarnett (~Adium@46-64-77-112.zone15.bethere.co.uk)
- # [15:26] <matjas> you guys, tabs are way better
- # [15:27] <Ms2ger> At inducing rage?
- # [15:28] * Quits: charl_ (~charl@2001:67c:2564:524:92b1:1cff:fe89:ae5) (Quit: leaving)
- # [15:29] <Ms2ger> annevk, r? https://critic.hoppipolla.co.uk/r/295
- # [15:31] <annevk> Ms2ger: commit message could say empty string names, seems fine otherwise
- # [15:31] <SimonSapin> tabs are theoretically superior, but worse is better
- # [15:31] <annevk> Ms2ger: done it through the interface now
- # [15:31] <Ms2ger> Thanks
- # [15:34] <jgraham> The "tabs are better" arguments are all crazy talk
- # [15:35] <Ms2ger> There's something to be said for them, but in real life you also want alignment, and that needs spaces
- # [15:35] <Ms2ger> And mixing them is a horror
- # [15:42] * Joins: reyre (~reyre@142.204.133.18)
- # [15:42] * Joins: TheGallery (~TheGaller@ppp-2-85-123-86.home.otenet.gr)
- # [15:44] * Joins: krawchyk_ (~krawchyk@65.220.49.251)
- # [15:45] * Quits: reyre (~reyre@142.204.133.18) (Remote host closed the connection)
- # [15:45] * Quits: TheGallery (~TheGaller@ppp-2-85-123-86.home.otenet.gr) (Client Quit)
- # [15:45] * Joins: reyre (~reyre@142.204.133.18)
- # [15:46] * Joins: newtron (~newtron@199.71.174.103)
- # [15:48] * Quits: krawchyk (~krawchyk@65.220.49.251) (Ping timeout: 245 seconds)
- # [15:51] * Quits: roc (~chatzilla@121.98.230.221) (Ping timeout: 256 seconds)
- # [15:56] * Joins: TheGallery (~TheGaller@ppp-2-85-123-86.home.otenet.gr)
- # [15:57] * Joins: ehsan (~ehsan@66.207.208.102)
- # [16:04] * Joins: zkis (~zkis@178-55-63-127.bb.dnainternet.fi)
- # [16:16] * Joins: scor (scor@drupal.org/user/52142/view)
- # [16:21] * darobin wonders if people here know about http://w3tmemes.tumblr.com/
- # [16:24] * Joins: garciawebdev (~garciaweb@11-223-235-201.fibertel.com.ar)
- # [16:25] <SimonSapin> darobin: what does w3t stand for?
- # [16:26] <darobin> W3C Team
- # [16:27] <SimonSapin> wow, this is even more obscure than w3cmemes :p
- # [16:27] * Quits: zkis (~zkis@178-55-63-127.bb.dnainternet.fi) (Ping timeout: 248 seconds)
- # [16:27] * Joins: hasather (~hasather@cm-84.210.170.16.getinternet.no)
- # [16:30] <darobin> SimonSapin: yeah, it references all the Sikkrit Cabal stuff
- # [16:31] <darobin> that said, if you know about W3C I reckon you can figure out what most apply to, or at least imagine the situation :)
- # [16:35] * Joins: jannis_1 (~Adium@xdsl-188-155-17-213.adslplus.ch)
- # [16:37] * Quits: jannis_ (~Adium@xdsl-188-155-17-213.adslplus.ch) (Ping timeout: 264 seconds)
- # [16:40] * Joins: yoshu (~josh@174-21-234-55.tukw.qwest.net)
- # [16:42] * Quits: lilmonkey` (~colin@pdpc/supporter/professional/riven) (Ping timeout: 240 seconds)
- # [16:42] * Joins: AladinBouzerd (~aladinbou@41.104.234.250)
- # [16:43] * Joins: lilmonkey (~colin@5469E6D4.cm-12-2d.dynamic.ziggo.nl)
- # [16:43] * Quits: lilmonkey (~colin@5469E6D4.cm-12-2d.dynamic.ziggo.nl) (Changing host)
- # [16:43] * Joins: lilmonkey (~colin@pdpc/supporter/professional/riven)
- # [16:45] * Quits: tomasf (~tomasf@77.72.97.10.c.fiberdirekt.net) (Ping timeout: 264 seconds)
- # [16:46] * Quits: mven (~mven@ip68-224-15-53.lv.lv.cox.net) (Remote host closed the connection)
- # [16:53] * Quits: hasather (~hasather@cm-84.210.170.16.getinternet.no) (Remote host closed the connection)
- # [16:53] * Quits: ehsan (~ehsan@66.207.208.102) (Read error: Connection reset by peer)
- # [16:54] * Quits: sedovsek (~robert@89.143.12.238) (Quit: sedovsek)
- # [16:54] * Joins: ehsan (~ehsan@66.207.208.102)
- # [16:55] * Joins: sedovsek (~robert@89.143.12.238)
- # [16:55] <annevk> darobin: with some you can imagine half of the text being censored :)
- # [16:56] <annevk> darobin: does this have a Twitter account?
- # [16:56] <annevk> http://w3tmemes.tumblr.com/image/55808644257 :-)
- # [16:57] * Joins: gavinc (~gavin@barad-dur.carothers.name)
- # [16:59] <darobin> annevk: I don't believe it does, but you can set Tumblr up to tweet automatically, right?
- # [17:00] * Joins: lmclister (~lmclister@192.150.10.209)
- # [17:00] * Quits: sedovsek (~robert@89.143.12.238) (Quit: sedovsek)
- # [17:04] * Quits: yoshu (~josh@174-21-234-55.tukw.qwest.net) (Quit: yoshu)
- # [17:07] <annevk> darobin: yeah, should be pretty easy
- # [17:09] <darobin> well I couldn't possibly know who's behind this, but I'll try to pass the suggestion along
- # [17:11] * Quits: krawchyk_ (~krawchyk@65.220.49.251) (Ping timeout: 256 seconds)
- # [17:11] * Quits: AladinBouzerd (~aladinbou@41.104.234.250) (Read error: Connection reset by peer)
- # [17:12] * Joins: kuatsure (~kuatsure@208.102.118.1)
- # [17:13] * Quits: darobin (~darobin@78.109.80.74) (Remote host closed the connection)
- # [17:13] * Joins: AladinBouzerd (~aladinbou@41.108.21.63)
- # [17:14] <SteveF> anybody know of any implementations of inert attribute?
- # [17:19] * Quits: benbarnett (~Adium@46-64-77-112.zone15.bethere.co.uk) (Quit: Leaving.)
- # [17:22] * Joins: yoshu (~josh@174-21-234-55.tukw.qwest.net)
- # [17:25] * Joins: astearns (~astearns@192.150.22.5)
- # [17:26] * Joins: TuRnaD0 (~Thunderbi@x1-6-e0-46-9a-1e-fe-ca.k368.webspeed.dk)
- # [17:26] * Quits: Kolombiken (~Adium@gateway.creuna.se) (Ping timeout: 240 seconds)
- # [17:29] * Quits: zcorpan (~zcorpan@80.232.109.46) (Remote host closed the connection)
- # [17:40] * Joins: sedovsek (~robert@89.143.12.238)
- # [17:41] * Quits: yoshu (~josh@174-21-234-55.tukw.qwest.net) (Quit: yoshu)
- # [17:43] * Quits: TheGallery (~TheGaller@ppp-2-85-123-86.home.otenet.gr) (Quit: Leaving)
- # [17:45] * Quits: Smylers (~smylers@81.143.60.194) (Quit: Leaving.)
- # [17:53] * Quits: Lachy (~textual@213.166.174.2) (Quit: Textual IRC Client: www.textualapp.com)
- # [17:55] * Quits: Jedi_ (~Jedi@jedi.org) (Read error: Connection reset by peer)
- # [17:55] * Joins: Jedi_ (~Jedi@jedi.org)
- # [17:57] * Joins: mven (~mven@169.241.49.202)
- # [17:58] * Joins: jwalden (~waldo@nat/mozilla/x-hymmpbclprcxwdeu)
- # [18:04] * Joins: hasather (~hasather@cm-84.210.170.16.getinternet.no)
- # [18:04] * Joins: kriskowal (~kriskowal@24-205-76-28.dhcp.psdn.ca.charter.com)
- # [18:05] * Quits: sedovsek (~robert@89.143.12.238) (Quit: sedovsek)
- # [18:08] * Quits: hasather (~hasather@cm-84.210.170.16.getinternet.no) (Ping timeout: 264 seconds)
- # [18:10] * Joins: jernoble|laptop (~jernoble@76.74.153.41)
- # [18:13] * Joins: jsbell (jsbell@nat/google/x-bdnkjegeavkxxkcc)
- # [18:14] * Joins: bholley (~bholley@c-67-180-21-133.hsd1.ca.comcast.net)
- # [18:16] * Joins: charl_ (~charl@charl.eu)
- # [18:22] * Joins: zcorpan (~zcorpan@80.232.109.46)
- # [18:22] * Quits: jernoble|laptop (~jernoble@76.74.153.41) (Quit: Computer has gone to sleep.)
- # [18:23] * Joins: dfreedm (uid7859@gateway/web/irccloud.com/x-rczrmqxksoyxwfew)
- # [18:24] * Quits: mven (~mven@169.241.49.202) (Remote host closed the connection)
- # [18:26] * Joins: yoshu (~josh@173-10-93-238-BusName-Washington.hfc.comcastbusiness.net)
- # [18:26] <TabAtkins> Ms2ger: I mix tabs for indent and spaces for alignment regularly, and I haven't died yet. It Just Works (tm).
- # [18:27] * Joins: Maurice (copyman@94.213.121.34)
- # [18:28] <Ms2ger> TabAtkins, do you get it right?
- # [18:28] <TabAtkins> ...yes? How do you get it wrong? It seems like something you'd have to be deliberately stupid at to mess up.
- # [18:28] <jgraham> TabAtkins: Has anyone else working with your code died?
- # [18:29] <TabAtkins> jgraham: Not to my knowledge, but it's open-source, so who knows?
- # [18:29] <jgraham> TabAtkins: Uh, really? I don't think it's even well specified how to do it
- # [18:29] <jgraham> e.g.
- # [18:29] <jgraham> def foo(bar,
- # [18:29] <TabAtkins> You... tab to the indentation level you want, then space to the alignment you want.
- # [18:29] <jgraham> baz)
- # [18:30] <jgraham> (heh, missed a space)
- # [18:30] <jgraham> How many tabs and how many spaces on the second line?
- # [18:30] <TabAtkins> I'm not in a fixed-width font anyway, so it's lost on me.
- # [18:30] <JakeA> I used to use tabs for a semantic block indent, and spaces for a presentational alignment
- # [18:30] * Quits: reyre (~reyre@142.204.133.18) (Remote host closed the connection)
- # [18:30] <TabAtkins> JakeA: Yes.
- # [18:30] * Quits: SteveF (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com) (Ping timeout: 246 seconds)
- # [18:30] <TabAtkins> jgraham: Tab to the same line indentation as the primary line, because you're not wanting to indent any more. Space to whatever alignment you want.
- # [18:30] * Joins: reyre (~reyre@142.204.133.18)
- # [18:31] <JakeA> so you'd never have tabs after a space, but you may have spaces after a tab
- # [18:31] <JakeA> hah, yes, that
- # [18:31] <jgraham> TabAtkins: Some people would consider that to need one extra level of indentation
- # [18:31] <TabAtkins> jgraham: Literally *any other combination* would be completely fucked up if you changed your tab size.
- # [18:31] * Joins: Lachy (~textual@cm-84.215.104.248.getinternet.no)
- # [18:31] <TabAtkins> Those people are dumb.
- # [18:31] <TabAtkins> And don't understand what tabs are for.
- # [18:31] <jgraham> I think the sematic argument is pure crazy
- # [18:32] <Ms2ger> It's fine in theory
- # [18:32] <Ms2ger> Like astrophysics
- # [18:32] <jgraham> Your code has the semantics that the compiler gives it
- # [18:32] <TabAtkins> The "sementic" argument is just a shorthand for "look, dammit, I like a different indent size than you".
- # [18:32] <jgraham> If the complier isn't infering any semantics from it, there aren't any
- # [18:32] <JakeA> yeah
- # [18:32] <TabAtkins> (I often go for a 3-space indent.)
- # [18:33] <jgraham> So the "semantic" argument is a shorthand for "presentation"?
- # [18:33] <jgraham> Weird
- # [18:34] <TabAtkins> Um, no. Quit being deliberately difficult. You know what Jake means by "semantic block".
- # [18:34] <JakeA> a tab is 1 unit of indent sized to the viewer's preference, space is a single char-width alignment where the user's preference is deliberately ignored
- # [18:34] <TabAtkins> The rule is very simply expressed in terms of presentation - if I change the tab size, will I fuck up anything's alignment? If so, you're using them wrong.
- # [18:35] <JakeA> yeah, that's a better explanation
- # [18:35] <TabAtkins> If you want to link that up to the word "semantics", it's similar to "if I view this page in a different modality, will anything fuck up?".
- # [18:39] <TabAtkins> One could certainly think that it's not worth it to have a variable indentation size, but I point you to the fact that WebKit and Chrome settled on *different* indent sizes, and editing both at the same time is extremely frustrating.
- # [18:39] <TabAtkins> Especially now that we're Blink.
- # [18:40] <Ms2ger> Shrug
- # [18:40] <Ms2ger> It's only infuriating if you don't use the tab key for indentation
- # [18:40] <jgraham> TabAtkins: Having seen the code style choices of chromium, I can only conclude that it's possible to fuck anything up if you put your mind to it
- # [18:40] * Joins: say2joe (~say2joe@209-253-225-97.ip.mcleodusa.net)
- # [18:41] <TabAtkins> There's also my observation that, in the absence of machine-based hygiene checking, I have *never* seen a space-based indent file that didn't fuck up its indentation at some point.
- # [18:41] <jgraham> I don't know who thought that making python look like C++ (not just in indentation, but in every way they could find) was a good idea
- # [18:41] <TabAtkins> As evidenced by the fact that every time I have to edit one, and I try a basic conversion of "apparent indent size -> tabs", there's stray spaces everywhere.
- # [18:41] <TabAtkins> jgraham: No comment. :/
- # [18:41] * Parts: say2joe (~say2joe@209-253-225-97.ip.mcleodusa.net)
- # [18:45] <TabAtkins> heycam|away: Yeah, late review is fine.
- # [18:45] * Joins: benbarnett (~Adium@46-64-77-112.zone15.bethere.co.uk)
- # [18:49] * Quits: vitorpacheco (~vitor@189-105-71-176.user.veloxzone.com.br) (Read error: Operation timed out)
- # [18:51] * Joins: svl (~me@ip565744a7.direct-adsl.nl)
- # [18:51] <zewt> dear people who say "fx" when they mean "ff": stop it, it's confusing
- # [18:51] * Quits: reyre (~reyre@142.204.133.18) (Ping timeout: 268 seconds)
- # [18:52] <Ms2ger> Fx
- # [18:55] * Quits: tobie_ (~tobielang@25-176.199-178.cust.bluewin.ch) (Quit: tobie_)
- # [18:56] * Quits: kuatsure (~kuatsure@208.102.118.1) (Quit: zzz)
- # [18:57] * Joins: kuatsure (~kuatsure@208.102.118.1)
- # [18:57] * Parts: adactio (~adactio@host213-123-197-180.in-addr.btopenworld.com)
- # [18:59] * Joins: krit (~krit@sjfw1.adobe.com)
- # [19:00] * Quits: benbarnett (~Adium@46-64-77-112.zone15.bethere.co.uk) (Quit: Leaving.)
- # [19:01] * Joins: say2joe1 (~say2joe@209-253-225-97.ip.mcleodusa.net)
- # [19:01] * Quits: alecf (alecf@nat/google/x-wxdtjptqbzotphek) (Quit: alecf)
- # [19:01] * Quits: say2joe1 (~say2joe@209-253-225-97.ip.mcleodusa.net) (Client Quit)
- # [19:03] * Joins: ap (~ap@2620:149:4:304:f07d:c308:6fec:75d7)
- # [19:13] <TabAtkins> F5x
- # [19:14] * Joins: SteveF_ (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com)
- # [19:19] * Joins: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net)
- # [19:24] <TabAtkins> zcorpan: Regarding that bug, depending on his markup Grid can handle that. Otherwise, it's dependent on us improving the Position property, which fantasai and I intend to do next year.
- # [19:24] <zcorpan> TabAtkins: see the last comment for the markup
- # [19:26] <TabAtkins> zcorpan: Right, if he actually needs the <table>, he'll have to wait for Position. If he's just wanting to put things in a grid, and can make #i2 a sibling of the other "cells", then Grid'll do.
- # [19:26] <zcorpan> TabAtkins: is there a bugzilla component for Position?
- # [19:27] <zcorpan> TabAtkins: can grid create cells that overlap?
- # [19:27] <TabAtkins> Maybe. If not, ask MikeSmith to create one.
- # [19:28] <TabAtkins> And yes, grid items can overlap.
- # [19:28] <TabAtkins> (Named grid areas, created by the template, can't, but you can always manually specify the position and size of grid items.)
- # [19:29] * Quits: yoshu (~josh@173-10-93-238-BusName-Washington.hfc.comcastbusiness.net) (Quit: yoshu)
- # [19:29] * Quits: jannis_1 (~Adium@xdsl-188-155-17-213.adslplus.ch) (Quit: Leaving.)
- # [19:31] <Hixie_> Ms2ger: ping https://www.w3.org/Bugs/Public/show_bug.cgi?id=23119 ?
- # [19:31] <Ms2ger> Hixie_, yes
- # [19:31] <Hixie_> Ms2ger: what's the problem with the spec?
- # [19:32] * Ms2ger loads up that part of the spec
- # [19:32] <Ms2ger> "If the stack of open elements has a button element in scope, then run these substeps:"
- # [19:32] <Ms2ger> I have no idea what that means
- # [19:33] <Ms2ger> "has a button element in scope" links to "have an element in scope", which lost track of the button
- # [19:33] <Ms2ger> Then I get a link titled "has an element in the specific scope" to "have an element target node in a specific scope"
- # [19:34] <Ms2ger> Where suddenly a 'target node' appears out of thin air
- # [19:34] <jgraham> Right, iirc, there are two problems. It doesn't define the inputs to the algorithm, and it doesn't define the concept of equality it is using
- # [19:37] <Hixie_> Ms2ger: "has an element in scope" defines which elements are in scope
- # [19:37] <Hixie_> Ms2ger: so then you see if one of the elemnets in scope is a button element
- # [19:38] <Hixie_> Ms2ger: it's like saying "does this fruit bowl have a red apple" where you have an algorithm that defines whether "a fruit is an apple in a bowl"
- # [19:38] <jgraham> Hixie_: The problem is deeper
- # [19:38] <jgraham> Hixie_: "has an element in a specific scope" is broken
- # [19:38] <Hixie_> how so?
- # [19:38] <Ms2ger> Hixie_, jgraham managed to explain to me what you meant, but that doesn't make the spec say it
- # [19:39] <Hixie_> Ms2ger: as far as i can tell, it's what the spec says.
- # [19:39] <Hixie_> Ms2ger: i don't understand why it wouldn't say that.
- # [19:39] <jgraham> Hixie_: It uses a concept "target node" that is undefined
- # [19:39] <Hixie_> jgraham: that was fixed over the weekend
- # [19:39] * Joins: rniwa (~rniwa@17.212.154.114)
- # [19:39] <Ms2ger> You write an algorithm that takes an argument "target node"
- # [19:39] <jgraham> http://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#has-an-element-in-the-specific-scope looks wrong to me
- # [19:40] <Ms2ger> But none of the callers of that algorithm explain what they're passing as "target node"
- # [19:40] <Hixie_> Ms2ger: the algorithm isn't ever called as far as i know
- # [19:40] * Joins: alecf (alecf@nat/google/x-zmoiuycekezspomd)
- # [19:40] <Ms2ger> What
- # [19:40] <Hixie_> Ms2ger: it's a definition, not an imperative algorithm that's called
- # [19:41] <jgraham> I am now super-confused
- # [19:41] <Ms2ger> "The stack of open elements is said to have an element in scope when it has an element in the specific scope consisting of the following element types:"
- # [19:41] <Ms2ger> That's calling it
- # [19:41] <Hixie_> no
- # [19:41] <Ms2ger> Well, it sure should be!
- # [19:41] <Hixie_> calling an algorithm is more like "Insert an HTML element for the token for which the element entry was created, to obtain new element"
- # [19:42] <Hixie_> this is just defining "have an element in scope"
- # [19:42] <Ms2ger> Well, it's defining it poorly
- # [19:42] <Hixie_> it's just simple english
- # [19:42] <Hixie_> i really don't understand the problem here
- # [19:42] <Hixie_> it's defining a property of elements
- # [19:42] <jgraham> I don't understand how you don't understand the problem
- # [19:42] <Ms2ger> Me neither
- # [19:43] <Ms2ger> So if only the editor understands the spec, is the spec good?
- # [19:43] <jgraham> Hixie_: The spec specifically says it's defining a property of the stack of open elements
- # [19:43] <Hixie_> everyone actually understand this, given that it's been implemented consistently by multiple people
- # [19:43] <jgraham> Not a property of the elements themselves
- # [19:43] <jgraham> I don't think this used to be brokwn in this way
- # [19:44] <Hixie_> jgraham: jgraham yeah, it's really defining a property of the stack for each element
- # [19:44] <jgraham> Otherwise I was incredibly negligent in not giving feedback
- # [19:44] <Hixie_> this part of the spec hasn't changed in months if not years
- # [19:44] <Hixie_> not in a meaningful way, anyway
- # [19:45] * Quits: baku (~baku@2-236-39-253.ip231.fastwebnet.it) (Ping timeout: 245 seconds)
- # [19:45] <Ms2ger> Has anyone implemented it since?
- # [19:45] <jgraham> Apart from the change at the weekend (which I think I have now), that slightly unbroke it, you mean?
- # [19:45] <Hixie_> "A fruit bowl is said to have a fruit /target fruit/ on top when the following algorithm terminates in a match state: 1. /target fruit/ has no fruit above it"
- # [19:45] <Hixie_> "If there is a pear that is on top of the fruit bowl, then..."
- # [19:46] <Hixie_> this is the exact same formulation
- # [19:46] <jgraham> OK, so, I think this makes sense if you imagine that the algorithm gets run for every element on the stack of open elements
- # [19:46] <jgraham> (perhaps)
- # [19:46] <Hixie_> it's jsut a definition, i wouldn't expect anyone to actually run this each time
- # [19:47] <Hixie_> i'd probably just set a bit
- # [19:47] <Hixie_> when the condition becomes true
- # [19:47] <jgraham> Ignore implementations
- # [19:47] <Hixie_> and unset it when it becomes false
- # [19:48] <jgraham> (fwiw I'm pretty sure that html5lib runs this each time. And it isn't a noticable perf. problem in non-pathological cases)
- # [19:48] <jgraham> But like I said, ignore implementations
- # [19:48] <jgraham> The way the spec is worded, it feels like you take a type of element
- # [19:48] <Ms2ger> "The stack of open elements is said to *have an element in scope* when..."
- # [19:48] <jgraham> e.g. a P element
- # [19:49] <jgraham> and run it through the algorithm, which will return whether that element is in a particular scope or not
- # [19:49] <Ms2ger> That would mean Stack::HasElementInScope(/* no arguments */)
- # [19:49] <jgraham> Ms2ger: Try a force reload
- # [19:50] <Ms2ger> Not the specific scope
- # [19:50] <jgraham> Oh
- # [19:50] <Ms2ger> The plain "in scope"
- # [19:50] <Hixie_> jgraham: the definition is applied to types ("is there any element in scope that happens to have this type") as well as specific nodes ("is this specific element in scope right now")
- # [19:50] <TabAtkins> Tangent: does anyone know what the timezone is in gavin's stats?
- # [19:50] <jgraham> Ms2ger: Yes, that's still wrong
- # [19:51] <Hixie_> hm yeah, "when it has an" should be "when it has that"
- # [19:51] * Quits: reggna (~reggna@irc.jagochmittmoln.se) (Ping timeout: 264 seconds)
- # [19:52] <jgraham> Hixie_: But then it still doesn't make sense. You are conflating E and type(E)
- # [19:52] * Joins: jannis_ (~Adium@xdsl-188-155-17-213.adslplus.ch)
- # [19:52] <Ms2ger> Maybe ... *have an element with _local name_ /local name/ and _namespace_ /namespace/ in scope* when...
- # [19:52] <Hixie_> jgraham: where does type(E) come in?
- # [19:52] <Ms2ger> /x/ => var, _x_ => a
- # [19:53] * Joins: benbarnett (~Adium@46-64-77-112.zone15.bethere.co.uk)
- # [19:53] <jgraham> Hixie_: "has a P element in scope"
- # [19:53] <jgraham> The algorithm works with specific elements
- # [19:53] <Hixie_> Ms2ger: it's defining the property for each node in the stack, it's not an algorithm you run to get a boolean result for the stack.
- # [19:53] <Hixie_> go back to my fruit bowl example. why is that one fine but the spec not?
- # [19:54] <jgraham> Hixie_: The fundamental problem is tht the way the spec is worded implies it's an algorithm you invoke at specific times
- # [19:54] <Ms2ger> Because the spec isn't a fruit bowl
- # [19:54] * Quits: annevk (~annevk@207.218.72.65) (Remote host closed the connection)
- # [19:54] <jgraham> Hixie_: I don't care about fruit bowl examples. The spec is confusing irrespective of whether some other instance of the same construction is (I didn't even read the example)
- # [19:54] <Hixie_> jgraham: if you're reading implications, then you're misreading the spec. read what it says, not between the lines.
- # [19:54] * Joins: annevk (~annevk@207.218.72.65)
- # [19:55] <Hixie_> ok if you're not even willing to consider the examples i'm giving, this conversation isn't being very productive.
- # [19:55] <Hixie_> the fruit bowl example would help because it would help me understand what the difference is between an obviously fine construction, and the one that's confusing you.
- # [19:55] <jgraham> Hixie_: Unless you are going to give the same examples to everyone that reads the spec, I don't understand their value in the face of the fact that both Ms2ger and I find the spec confusing
- # [19:56] <Ms2ger> Hixie_, okay, let me compare to your fruit bowl
- # [19:56] <Ms2ger> "A fruit bowl is said to have a fruit /target fruit/ on top when the following algorithm terminates in a match state: ..."
- # [19:57] <Ms2ger> "The stack of open elements is said to have an element in scope when..."
- # [19:57] <Hixie_> jgraham: the value is that that construction is unambiguously ok, but the spec is apparently not, yet i think they're identical. so if you can explain to me why they're not, it helps me understand the problem with the spec.
- # [19:57] <Ms2ger> The obvious difference: the fruit bowl one takes an algorithm, the stack one doesn't
- # [19:57] * Quits: ehsan (~ehsan@66.207.208.102) (Remote host closed the connection)
- # [19:57] <jgraham> Hixie_: I have now read it and don't think your fruit bowl example is very clear either fwiw
- # [19:57] * Joins: ehsan (~ehsan@66.207.208.102)
- # [19:57] <Hixie_> Ms2ger: the fruit bowl one is about the specific scope definition
- # [19:57] <Hixie_> jgraham: oh
- # [19:58] <Hixie_> jgraham: then i am even more confused :-)
- # [19:58] <Ms2ger> But you don't jump from the use in the parser straight to the specific scope
- # [19:59] <Ms2ger> You jump from the parser to the #has-an-element-in-scope then to #has-an-element-in-the-specific-scope
- # [19:59] <Ms2ger> And it's not clear that the 'button' in the parser needs to end up as the /target node/ in #has-an-element-in-the-specific-scope
- # [19:59] <jgraham> You are invoking an algorithm (that is itself a bit magic, but let's not worry about that) in a very roundabout way that makes it unclear what the arguments to the algorithm are
- # [19:59] * Quits: annevk (~annevk@207.218.72.65) (Ping timeout: 248 seconds)
- # [19:59] <TabAtkins> annevk: Can you add an "adopt" hook to the Promises spec? Also, is the correct way to invoke one of the static Promise methods (in the case I'm writing right now, Promise.every()), just to invoke it as code or something?
- # [20:00] <Hixie_> Ms2ger: the analogous fruit bowl one would be "the fruit bowl is said to have a fruit on top when that fruit is specifically on top of the following fruit types: ..." where "a fruit is specifically on top" is similar to the earlier example but the algorithm is longer and checks for those fruit types.
- # [20:00] <zcorpan> TabAtkins: is http://dev.w3.org/csswg/css-position/#position-root a placeholder for this?
- # [20:00] <Ms2ger> (Or what "If /node/ is the target node, terminate in a match state." means when you fill in /target node/==|button|)
- # [20:00] <Hixie_> Ms2ger: woah, the "button" in the parser _doesn't_ end up being the /target node/.
- # [20:00] <Hixie_> Ms2ger: what makes you think it does?
- # [20:01] <Ms2ger> It's the only thing I *can* fill in!
- # [20:01] <Hixie_> jgraham: there's no algorithm invokation, it's a definition.
- # [20:01] * Quits: tantek (~tantek@50-0-164-83.dsl.dynamic.sonic.net) (Quit: tantek)
- # [20:01] <Ms2ger> What else would it be?
- # [20:01] <jgraham> Hixie_: There is an algorithm. Conceptually it must be invoked
- # [20:01] <TabAtkins> zcorpan: Yes, and see http://www.xanthir.com/blog/b48H0 for a more fleshed out early early draft of it.
- # [20:02] <jgraham> If you just wrote the spec to invoke the actual algorithm rather than having invoked behind the scenes at some point when you read the definition, everything would be much clearer
- # [20:02] <Hixie_> Ms2ger: every node ever created in the history of the world is passed to the definition, to see if it is in scope or not. this makes every node have a true or false state, which is all you are later checking.
- # [20:02] <zcorpan> TabAtkins: thx
- # [20:03] <jgraham> Hixie_: Where does the spec say that?
- # [20:03] <Ms2ger> Huh
- # [20:03] <Ms2ger> So what is "the target node"?
- # [20:03] * Joins: reggna (~reggna@irc.jagochmittmoln.se)
- # [20:03] <Hixie_> jgraham: certainly you could phrase the spec that way, but i would rather phrase the spec in a way that just asks if there's a node that fits the criteria. i'm happy to consider better ways to do that, though, since apparently (despite interop...) the spec doesn't do it well enough
- # [20:04] <jgraham> Why would you rather do that?
- # [20:04] <Hixie_> jgraham: because generally speaking it makes the text easier to reason about.
- # [20:05] <Hixie_> declarative > imperative, where possible.
- # [20:05] <jgraham> This conversation isn't supporting that point of view
- # [20:05] <Hixie_> Ms2ger: it's the "x" in "an x has property y if..."
- # [20:05] * Krinkle|detached is now known as Krinkle
- # [20:05] <Hixie_> Ms2ger: it's the mathematical equivalent of the indefinite article
- # [20:05] <Ms2ger> Let's step back
- # [20:06] <Ms2ger> I was looking at the following text in the parser:
- # [20:06] <Ms2ger> "If the stack of open elements has a button element in scope, then run these substeps:..."
- # [20:06] * Joins: yoshu (~josh@174-21-234-55.tukw.qwest.net)
- # [20:06] <Ms2ger> How am I supposed to interpret that
- # [20:06] <Ms2ger> ?
- # [20:06] <Hixie_> Ms2ger: is there a button element that has the property "currently is in scope"?
- # [20:06] <Hixie_> Ms2ger: or to put it another way:
- # [20:07] <Hixie_> Ms2ger: is there an element X, which has X.type "button" and X.inScope "true"?
- # [20:07] <jgraham> I have no idea how you could get to that interpretation from the spec as written
- # [20:07] <jgraham> There is nothing to suggest that elements have a property of being in scope
- # [20:07] <Hixie_> i have no idea how you could interpret it as an imperative algorithm invocation
- # [20:08] <Hixie_> "The stack of open elements is said to have an element in scope when"
- # [20:08] <Ms2ger> That seems a very unintuitive interpretation
- # [20:08] <jgraham> Or that a question about the stack of open elements is supposed to be a quaestion about the set of all elements
- # [20:08] <jgraham> *question
- # [20:08] * Quits: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt) (Remote host closed the connection)
- # [20:08] <Ms2ger> Now if it had said "If the stack of open elements _has an element in scope_ that is a button element"
- # [20:09] * Joins: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt)
- # [20:09] <Ms2ger> Is that what you mean?
- # [20:09] * Joins: jacobolu_ (~jacobolus@70-36-196-50.dsl.static.sonic.net)
- # [20:09] * jgraham has to go now
- # [20:09] <Hixie_> I honestly truly don't see why this is hard. The spec defines "The stack of open elements is said to have an element in scope when" and then it asks whether "the stack of open elements has an element in scope" (specifically, whether it has one that is also a button element)
- # [20:09] <Ms2ger> It's not obvious that that's what it asks
- # [20:09] <Hixie_> what else could it ask?
- # [20:10] <Hixie_> i mean, this is just regular english
- # [20:10] <Ms2ger> Does the stack have the property "has a button element in scope"
- # [20:10] * Quits: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net) (Read error: Connection reset by peer)
- # [20:10] <Ms2ger> And then the issue is that nothing defines what that means
- # [20:10] <Hixie_> "a kid is wearing a sweater when..." "is there a red kid wearing a sweater?"
- # [20:10] <Ms2ger> Whet you're saying now is "is there a...", "does there exists a..."
- # [20:11] <Ms2ger> But the spec doesn't say that
- # [20:11] <Ms2ger> *exist
- # [20:11] <Hixie_> "If the stack of open elements has a button element in scope" is a "Does there exist a" question.
- # [20:11] <Ms2ger> I don't read it that way
- # [20:11] <Hixie_> (or rather, "a classroom has a kid wearing a sweater when"... "if the classroom has a red kid wearing as sweater, then..."
- # [20:11] <Hixie_> )
- # [20:11] <Hixie_> s/as/a/
- # [20:12] <Hixie_> what other way is there to read it?
- # [20:12] <Hixie_> i'm really baffled by this
- # [20:12] <Ms2ger> 'Does the stack have the property "has a button element in scope"?'
- # [20:12] <Hixie_> it has the property "has an element in scope", which is even hyperlinked from the sentence you're asking about
- # [20:12] * Joins: Smylers (~smylers@host86-186-192-222.range86-186.btcentralplus.com)
- # [20:13] <Ms2ger> So the hyperlink goes to the definition of
- # [20:13] <Ms2ger> "Does the stack have a/any element in scope"
- # [20:13] * Quits: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt) (Ping timeout: 256 seconds)
- # [20:13] <Hixie_> a/any ?
- # [20:13] <Ms2ger> "Does the stack have a element in scope" or "Does the stack have any element in scope"
- # [20:14] <Hixie_> where do you get "does the stack have any element in scope"?
- # [20:14] <Ms2ger> That's just plain English
- # [20:15] <Ms2ger> "The stack of open elements is said to have an element in scope when..."
- # [20:15] <Ms2ger> That defines the answer to "Does the stack have any element in scope?"
- # [20:15] * Joins: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt)
- # [20:15] <Hixie_> hmm, ok, i buy that
- # [20:15] <Hixie_> one sec
- # [20:17] <Hixie_> ok, renamed it to "have a particular element in scope"
- # [20:17] <Hixie_> does that solve the "any" issue?
- # [20:17] * Ms2ger thinks
- # [20:19] <Ms2ger> Yes, I think so
- # [20:19] <Ms2ger> However
- # [20:19] <Ms2ger> That still means you define it for one particular element in the history of the world
- # [20:20] * Joins: rafaelw_ (uid4459@gateway/web/irccloud.com/x-xxmxnisccguuxlbw)
- # [20:20] <Ms2ger> And that's IMO quite a leap from the way you link to the definition in "If the stack of open elements has a button element in scope"
- # [20:21] <Hixie_> isn't that just what a definition always is?
- # [20:21] <Hixie_> you define some property of an abstract thing
- # [20:21] <Hixie_> then you can refer to that property for all concrete things
- # [20:22] <Ms2ger> I guess the main issue is this
- # [20:22] <Ms2ger> When I end up here, I want to follow imperative steps
- # [20:23] <Ms2ger> And I've been doing that repeatedly since I started reading
- # [20:23] * Quits: mitemitreski (~mitemitre@212.120.17.179) (Read error: Connection reset by peer)
- # [20:23] * Quits: AladinBouzerd (~aladinbou@41.108.21.63) (Read error: Connection reset by peer)
- # [20:23] <Hixie_> what's the imperative step for "the current node is a MathML text integration point"?
- # [20:23] <Ms2ger> But suddenly, without a warning, I end up with a declarative definition
- # [20:23] <Hixie_> or "is an element in the HTML namespace"?
- # [20:24] <Hixie_> or "the current node"?
- # [20:24] <Ms2ger> 1. Get the namespace
- # [20:24] * Joins: AladinBouzerd (~aladinbou@41.108.21.63)
- # [20:24] <Ms2ger> 2. If the namespace if the HTML namespace, return true
- # [20:24] <Hixie_> where's that in the spec?
- # [20:24] <Ms2ger> 3. Otherwise, return false
- # [20:24] <Hixie_> all the spec does is define the namespace property
- # [20:24] <Ms2ger> It's a straightforward translation, though
- # [20:24] <Ms2ger> I find the case here less straightforward
- # [20:25] <Hixie_> how about "If the parser's Document has a style sheet that is blocking scripts" ?
- # [20:25] <Hixie_> or "if there is an adjusted current node and it is not an element in the HTML namespace and the next seven characters are a case-sensitive match for the string "[CDATA["" ?
- # [20:25] <Hixie_> the parser is full of these property checks
- # [20:25] <Hixie_> in fact i don't really see how else you could do it
- # [20:25] * Quits: zcorpan (~zcorpan@80.232.109.46) (Remote host closed the connection)
- # [20:25] <Hixie_> programming is full of property checks
- # [20:25] <Ms2ger> I agree there are property checks
- # [20:26] * Quits: AladinBouzerd (~aladinbou@41.108.21.63) (Read error: Connection reset by peer)
- # [20:26] <Hixie_> how would you phrase "If the stack of open elements does not have a body element in scope, this is a parse error; ignore the token." if it wasn't a property check?
- # [20:26] <Ms2ger> Loop over the stack, until you find a body element
- # [20:26] * Joins: AladinBouzerd (~aladinbou@41.108.21.63)
- # [20:26] * Joins: annevk (~annevk@2.31.25.182)
- # [20:27] * Joins: zcorpan (~zcorpan@80.232.109.46)
- # [20:27] <Hixie_> that would like double the length of this part of the spec
- # [20:27] <Hixie_> and make it harder to reason about to boot
- # [20:27] * Joins: mven (~mven@169.241.1.168)
- # [20:27] <Ms2ger> You don't have to write that out every time
- # [20:28] <Hixie_> what exact text would you replace the above with?
- # [20:29] * Joins: McNugit (~McNugit@ip68-111-163-8.sd.sd.cox.net)
- # [20:29] * Quits: mven (~mven@169.241.1.168) (Read error: Connection reset by peer)
- # [20:29] <Ms2ger> Either you keep the definition with the particular node for "has a particular element in scope", and then you write:
- # [20:29] * Joins: mven (~mven@169.241.1.168)
- # [20:30] <Ms2ger> "If the stack of open elements does not have a particular element in scope that is a body element, this is..."
- # [20:30] * Joins: mven_ (~mven@169.241.49.182)
- # [20:30] <Ms2ger> Or you keep that text, and define...
- # [20:31] * Quits: ap (~ap@2620:149:4:304:f07d:c308:6fec:75d7) (Read error: Connection reset by peer)
- # [20:31] * Joins: ap (~ap@17.202.47.229)
- # [20:31] * Quits: zcorpan (~zcorpan@80.232.109.46) (Ping timeout: 245 seconds)
- # [20:31] <Ms2ger> The stack of open elements has an element of kind (or whatever) /x/ in scope when... loop... if /node/ is of kind /x/: match
- # [20:32] <Hixie_> i don't understand why "If the stack of open elements does not have a particular element in scope" is ok for you, but "...does not have a button element in scope" is not, given the way english works.
- # [20:32] <Ms2ger> They're both fine, but they don't connect
- # [20:32] * jacobolu_ is now known as jacobolus
- # [20:33] * Joins: reyre (~reyre@142.204.133.18)
- # [20:33] <Hixie_> "The player has a fruit if their inventory contains a fruit" "Does the player have a pear?" connects, does it not?
- # [20:33] <Hixie_> why is this different?
- # [20:33] * Quits: mven (~mven@169.241.1.168) (Ping timeout: 245 seconds)
- # [20:33] <Ms2ger> Doesn't connect for me
- # [20:34] <Hixie_> ...
- # [20:34] <Hixie_> really?
- # [20:34] <Ms2ger> If you define "The player has a fruit if their inventory contains a fruit", I can only answer "Does the player have any fruit"
- # [20:34] <Hixie_> i gotta go to lunch. bbiab.
- # [20:34] <Ms2ger> And I'm going to head off for the night, ttyl
- # [20:35] <annevk> Hixie_: it's kinda weird that "does not have a body element in scope" links to "have an element in scope" whose types don't list the body element
- # [20:35] <annevk> might be xref issue I suppose
- # [20:36] * Quits: AladinBouzerd (~aladinbou@41.108.21.63) (Read error: Connection reset by peer)
- # [20:36] * Joins: AladinBouzerd (~aladinbou@41.108.21.63)
- # [20:36] <Ms2ger> Maybe "If the stack of open elements does not have >>any<< body element in scope, this is..." might be clearer already
- # [20:36] <Ms2ger> But my brain is too fried to continue right now :)
- # [20:43] <annevk> "a" is the same as "any" really
- # [20:43] <annevk> in this context
- # [20:46] * Quits: Smylers (~smylers@host86-186-192-222.range86-186.btcentralplus.com) (Ping timeout: 245 seconds)
- # [20:48] * Quits: MrTango (~maik@146-52-135-207-dynip.superkabel.de) (Ping timeout: 240 seconds)
- # [20:48] * Joins: [[zzz]] (~q@node-3op.pool-125-25.dynamic.totbb.net)
- # [20:51] * Quits: [[zz]] (~q@node-490.pool-125-25.dynamic.totbb.net) (Ping timeout: 245 seconds)
- # [20:54] * Quits: mven_ (~mven@169.241.49.182) (Remote host closed the connection)
- # [20:55] * Quits: benbarnett (~Adium@46-64-77-112.zone15.bethere.co.uk) (Quit: Leaving.)
- # [21:06] <TabAtkins> What's the idiomatic way to deal with exceptions in a spec? Specifically, I need to take a 'font' value and turn it into a list of matching Font objects. If there's no matching objects, I want to throw an error. (Actually, reject a promise, but I'll reject it with an error.) What's the right thing to do with something like this?
- # [21:10] <TabAtkins> (also, lunch now - replies will be responded to in an hour or so)
- # [21:11] * Quits: yoshu (~josh@174-21-234-55.tukw.qwest.net) (Quit: yoshu)
- # [21:13] * Quits: cheron (~cheron@unaffiliated/cheron) (Ping timeout: 245 seconds)
- # [21:15] * Joins: zkis (~zkis@87-95-11-9.bb.dnainternet.fi)
- # [21:15] <annevk> TabAtkins: prolly a plain JavaScript TypeError or RangeError
- # [21:15] * Joins: sedovsek (~robert@lk.84.20.237.54.dc.cable.static.lj-kabel.net)
- # [21:16] <annevk> TabAtkins: doesn't seem like there's a nice semantic mapping though between 'font' property values (assuming that's what you meant) and Font objects (representing individual fonts I assume once again)
- # [21:18] * Joins: css (~css@unaffiliated/css)
- # [21:19] * Joins: ^esc (~esc-ape@178.115.133.67.wireless.dyn.drei.com)
- # [21:21] * Quits: SteveF_ (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com) (Ping timeout: 264 seconds)
- # [21:26] * Quits: krit (~krit@sjfw1.adobe.com) (Read error: Connection reset by peer)
- # [21:27] * Joins: tantek (~tantek@50-0-164-83.dsl.dynamic.sonic.net)
- # [21:29] * Quits: ap (~ap@17.202.47.229) (Quit: ap)
- # [21:29] * Joins: yoshu (~josh@174-21-234-55.tukw.qwest.net)
- # [21:29] * Quits: kinetik (~kinetik@121.99.174.7) (Quit: leaving)
- # [21:35] * Quits: bholley (~bholley@c-67-180-21-133.hsd1.ca.comcast.net) (Quit: bholley)
- # [21:38] * Joins: lilmonkey` (~colin@5469E6D4.cm-12-2d.dynamic.ziggo.nl)
- # [21:38] * Quits: lilmonkey` (~colin@5469E6D4.cm-12-2d.dynamic.ziggo.nl) (Changing host)
- # [21:38] * Joins: lilmonkey` (~colin@pdpc/supporter/professional/riven)
- # [21:42] * Quits: lilmonkey (~colin@pdpc/supporter/professional/riven) (Ping timeout: 260 seconds)
- # [21:46] * Joins: SteveF_ (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com)
- # [21:47] * Joins: nessy (~silviapf@101.164.144.53)
- # [21:50] * Joins: say2joe (~say2joe@209-253-225-97.ip.mcleodusa.net)
- # [21:50] * Joins: kinetik (~kinetik@121.99.168.211)
- # [21:50] * Parts: say2joe (~say2joe@209-253-225-97.ip.mcleodusa.net)
- # [21:57] * Quits: SteveF_ (~chatzilla@cpc3-nmal20-2-0-cust916.19-2.cable.virginmedia.com) (Ping timeout: 264 seconds)
- # [21:58] * Quits: kinetik (~kinetik@121.99.168.211) (Ping timeout: 256 seconds)
- # [22:02] * Joins: kinetik (~kinetik@121.99.58.238)
- # [22:02] * Quits: TuRnaD0 (~Thunderbi@x1-6-e0-46-9a-1e-fe-ca.k368.webspeed.dk) (Quit: TuRnaD0)
- # [22:05] * Joins: cabanier (~cabanier@c-98-237-137-173.hsd1.wa.comcast.net)
- # [22:08] * Quits: charl_ (~charl@charl.eu) (Quit: leaving)
- # [22:09] * Quits: reyre (~reyre@142.204.133.18) (Remote host closed the connection)
- # [22:12] * Joins: ap (~ap@2620:149:4:304:4035:45a6:78fe:1014)
- # [22:14] * Quits: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt) (Remote host closed the connection)
- # [22:15] * Joins: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt)
- # [22:20] * Quits: marcosc (~marcosc@bl8-174-239.dsl.telepac.pt) (Ping timeout: 260 seconds)
- # [22:25] * Quits: jannis_ (~Adium@xdsl-188-155-17-213.adslplus.ch) (Quit: Leaving.)
- # [22:30] * Joins: jannis_ (~Adium@xdsl-188-155-17-213.adslplus.ch)
- # [22:35] * Joins: mven (~mven@169.241.49.188)
- # [22:35] * Quits: cabanier (~cabanier@c-98-237-137-173.hsd1.wa.comcast.net) (Quit: Leaving.)
- # [22:36] * Joins: cabanier (~cabanier@c-98-237-137-173.hsd1.wa.comcast.net)
- # [22:43] * Quits: svl (~me@ip565744a7.direct-adsl.nl) (Quit: And back he spurred like a madman, shrieking a curse to the sky.)
- # [22:45] <TabAtkins> annevk: Yeah, there is - you just do the font resolution algo that Fonts defines, for choosing which faces to use.
- # [22:45] <TabAtkins> Each face is a Font object.
- # [22:45] <TabAtkins> Hm, so I should probably name the interface FontFace.
- # [22:45] <TabAtkins> annevk: I don't do anything more special than say "reject with a TypeError"?
- # [22:46] <annevk> That seems confusing with @font-face.
- # [22:46] <annevk> TabAtkins: yeah, if it's actually an error condition that seems fine. The browser can add a nice message...
- # [22:46] * Quits: kuatsure (~kuatsure@208.102.118.1) (Quit: zzz)
- # [22:46] <TabAtkins> annevk: @font-face creates implicit FontFace objects, prepopulating the document.fonts set.
- # [22:46] <annevk> TabAtkins: maybe say a JavaScript TypeError exception given that the rest of the language is prolly based around IDL..
- # [22:46] <TabAtkins> annevk: Okay, cool.
- # [22:48] <annevk> TabAtkins: I see. As for the objects. It might help thinking about what we'd expose if we went lower on the stack.
- # [22:48] <annevk> TabAtkins: as some day we might want to go there and it'd be great if things would still fit together if we did.
- # [22:48] <Ms2ger> https://twitter.com/glazou/status/374998161473155072
- # [22:49] * Quits: sedovsek (~robert@lk.84.20.237.54.dc.cable.static.lj-kabel.net) (Quit: sedovsek)
- # [22:49] <TabAtkins> annevk: My idea right now is to have a FontSet attached to documents and workers. @font-face rules pre-populate the document's set with FontFace objects. You can manually construct FontFaces with a descriptor dict and either a url or a TypedArray of font data, then add them to the set.
- # [22:49] <annevk> TabAtkins: that's the idea behind http://extensiblewebmanifesto.org/ anyway. Running the design by Yehuda and public-script-coord will prolly help us get there.
- # [22:49] <jgraham> Reasons I hate merges: http://git-scm.com/blog/2010/03/02/undoing-merges.html
- # [22:49] <TabAtkins> FontFaces would be transferrable, so you can hand them to a Worker to let it use fonts.
- # [22:49] <TabAtkins> annevk: Yeah, I'm doing first draft in spec, then plan to socialize it on public-script-coord.
- # [22:49] <jgraham> If you git revert a merge then redoing the merge doesn't work the way you expect
- # [22:49] <Ms2ger> jgraham, but why would you ever do that?!
- # [22:50] <jgraham> So you either need to edit history or remember that branch is special when you re-merge
- # [22:50] <TabAtkins> annevk: I signed that webpage, so yeah, I know the principles. ^_^
- # [22:50] <Ms2ger> Mm, signing web pages
- # [22:51] <jgraham> Ms2ger: In this case because https://github.com/w3c/web-platform-tests/pull/316#issuecomment-23740848
- # [22:51] * Ms2ger raises one eyebrow
- # [22:51] <annevk> TabAtkins: aight, sounds good.
- # [22:52] <annevk> TabAtkins: btw, why is code unit order not sensible for string ordering? I didn't quite get that thread...
- # [22:52] <TabAtkins> code unit order would be unambiguous, but it's not a proper "unicode ordering".
- # [22:53] <jgraham> I thought it only had to be well-defined, not useful
- # [22:53] <TabAtkins> Yeah, I suppose well-defined is enough here.
- # [22:53] <TabAtkins> And I can produce a well-defined-but-not-that-useful ordering for FontFace objects too.
- # [22:53] <TabAtkins> Do we have something on the platform that says that everything is just NFC or something?
- # [22:55] <jgraham> Is that even true?
- # [22:55] <TabAtkins> Oh man, it'll be nice when bikeshed integrates shepherd's IDL parsing, so I can avoid marking up all these IDL things as definitions and links.
- # [22:55] <TabAtkins> jgraham: Shrug.
- # [22:55] <jamesr_`> where are tests for http://encoding.spec.whatwg.org/ supposed to go?
- # [22:55] <TabAtkins> I think JS does NFC for its strings.
- # [22:56] <jamesr_`> TabAtkins: for sort?
- # [22:56] * Quits: mven (~mven@169.241.49.188) (Remote host closed the connection)
- # [22:56] <annevk> TabAtkins: Unicode ordering is overrated imo. Also, it seems better than undefined / random.
- # [22:56] <TabAtkins> jamesr_`: For what? That question doesn't have enough context.
- # [22:56] <TabAtkins> annevk: Yeah, better than undefined.
- # [22:57] * Parts: jannis_ (~Adium@xdsl-188-155-17-213.adslplus.ch)
- # [22:57] <annevk> TabAtkins: "JS does NFC for its strings" doesn't have enough context either ;-)
- # [22:57] <annevk> jamesr_`: I suggest https://github.com/w3c/web-platform-tests
- # [22:57] <annevk> jamesr_`: since all W3C specs rely on it these days
- # [22:57] <TabAtkins> I'm thinking I might be wrong, but I thought that JS mandated its strings to be in NFC.
- # [22:57] <annevk> TabAtkins: nah doesn't
- # [22:58] <TabAtkins> Ah, kk then.
- # [22:58] <annevk> TabAtkins: JS has 16-bit code unit strings
- # [22:58] <TabAtkins> Well, yeah, but still.
- # [22:58] <TabAtkins> And CSS doesn't mandate a normalization form either. :/
- # [22:58] <annevk> Pretty sure it doesn't do conformance like HTML does :-)
- # [22:58] <TabAtkins> Which means that technically "code unit" is still ambiguous.
- # [22:58] <jamesr_`> JS has 16-bit unsigned integers
- # [22:58] <jamesr_`> calling them 'code unit' is a stretch
- # [22:58] * Quits: Ms2ger (~Ms2ger@193.190.253.150) (Quit: nn)
- # [22:59] <zewt> makes sense to me, distinguishing from codepoints
- # [22:59] * Joins: mven (~mven@169.241.1.168)
- # [22:59] <jamesr_`> there's basically nothing in the language that requires or assumes the contents of JS strings have anything to do with unicode
- # [22:59] <annevk> jamesr_`: that's not true
- # [22:59] <TabAtkins> There's tons that *assumes*.
- # [22:59] <annevk> jamesr_`: and not that code unit != code point
- # [22:59] <TabAtkins> Anything that interacts with the string as a string assumes it's in a bastardized utf-16.
- # [22:59] <jamesr_`> UCS-2
- # [23:00] <TabAtkins> No, UCS-2 can't encode anything over 16-bits. It's bastardized utf-16.
- # [23:00] <TabAtkins> With a UCS-2-like structure.
- # [23:00] <annevk> serialized utf-16 with 16-bit indexing
- # [23:01] <jamesr_`> except that it isn't necessarily valid utf-16
- # [23:01] <TabAtkins> Right.
- # [23:01] <TabAtkins> So there's no *requirement*. But there's plenty of assumption.
- # [23:01] <jamesr_`> you can have arbitrary bits in each element and pretty much everything works
- # [23:01] <annevk> 16-bit code units is the term for that though...
- # [23:01] <TabAtkins> Anyway, back to writing specs.
- # [23:01] <TabAtkins> Oh yeah, annevk, while you're here - adopt hook?
- # [23:02] <annevk> or code points up to U+FFFD with special meaning for valid surrogate pairs
- # [23:02] <annevk> TabAtkins: file a bug I guess?
- # [23:02] <TabAtkins> annevk: kk
- # [23:03] <TabAtkins> And how best to say "Promise.every(some-spec-defined-list-of-promises)"?
- # [23:04] * Joins: mven_ (~mven@169.241.1.168)
- # [23:04] * Joins: hasather (~hasather@cm-84.210.170.16.getinternet.no)
- # [23:04] <annevk> TabAtkins: I guess for that you want to wait until we've re-defined Promise.every() and then simply reference its internal algorithm (that cannot be replaced).
- # [23:05] * jonlee|afk is now known as jonlee
- # [23:05] <TabAtkins> annevk: Cool. I'll just hand-wave for now with an issue about it.
- # [23:05] * Quits: mven (~mven@169.241.1.168) (Read error: Connection reset by peer)
- # [23:06] * Quits: TallTed (~Thud@63.119.36.36)
- # [23:07] * Joins: mven (~mven@169.241.49.188)
- # [23:07] * Krinkle is now known as Krinkle|detached
- # [23:08] <jsbell> jamesr_`: Might be a bit crufty now, but my JS prototype for the Encoding API has W3C-style tests in https://code.google.com/p/stringencoding/source/browse/tests.js
- # [23:09] <jsbell> i.e. someone could clean up and submit those
- # [23:11] * Quits: mven_ (~mven@169.241.1.168) (Ping timeout: 264 seconds)
- # [23:15] * Joins: reyre (~reyre@CPE7cb21b1e2cf4-CM7cb21b1e2cf1.cpe.net.cable.rogers.com)
- # [23:17] * Quits: Maurice (copyman@94.213.121.34)
- # [23:17] * Joins: zcorpan (~zcorpan@80.232.109.46)
- # [23:18] <jgraham> jsbell: Submit them now and we can track the cleanup in critic
- # [23:18] * Quits: mven (~mven@169.241.49.188) (Remote host closed the connection)
- # [23:18] <jgraham> (create a branch in the W3C repo rather than using your personal GH and we can even have multiple contributers)
- # [23:21] * Quits: jdaggett (~jdaggett@y230006.dynamic.ppp.asahi-net.or.jp) (Quit: jdaggett)
- # [23:22] * Quits: zcorpan (~zcorpan@80.232.109.46) (Ping timeout: 260 seconds)
- # [23:24] * Quits: felipeduardo (~felipedua@189.115.44.34) (Remote host closed the connection)
- # [23:24] * jonlee is now known as jonlee|afk
- # [23:25] * Quits: ap (~ap@2620:149:4:304:4035:45a6:78fe:1014) (Ping timeout: 245 seconds)
- # [23:27] * Quits: zdobersek (~zdobersek@cpe-77.38.31.63.cable.t-1.si) (Quit: ZNC - http://znc.in)
- # [23:27] * Joins: zcorpan (~zcorpan@80.232.109.46)
- # [23:28] * Quits: newtron (~newtron@199.71.174.103) (Remote host closed the connection)
- # [23:29] * Quits: hasather (~hasather@cm-84.210.170.16.getinternet.no) (Remote host closed the connection)
- # [23:33] * Joins: ap (~ap@17.202.47.229)
- # [23:33] * Quits: tantek (~tantek@50-0-164-83.dsl.dynamic.sonic.net) (Quit: tantek)
- # [23:33] * Joins: mven (~mven@169.241.49.188)
- # [23:39] <annevk> jgraham: I guess I should look into doing that for my URL tests too at some point?
- # [23:40] * Quits: yoshu (~josh@174-21-234-55.tukw.qwest.net) (Quit: yoshu)
- # [23:40] <annevk> I wonder what the licensing deal is these days
- # [23:40] <jsbell> jgraham: I need to be a member of the org presumably?
- # [23:42] * Joins: Smylers (~smylers@host86-156-211-142.range86-156.btcentralplus.com)
- # [23:44] * Quits: mven (~mven@169.241.49.188) (Remote host closed the connection)
- # [23:46] * jsbell grabs "jsbell" at github, yay for multiple personalities
- # [23:46] * Quits: scor (scor@drupal.org/user/52142/view) (Quit: scor)
- # [23:49] <TabAtkins> Suggestions on an interface name for "a set of fonts usable in a given context"?
- # [23:49] <TabAtkins> "FontFaceSet" might be sufficient.
- # [23:51] * Quits: ehsan (~ehsan@66.207.208.102) (Remote host closed the connection)
- # [23:52] * Joins: ehsan (~ehsan@66.207.208.102)
- # [23:55] <zcorpan> code unit order? i guess i need to say that for getComputedStyle huh
- # [23:55] <TabAtkins> zcorpan: Yeah.
- # [23:56] <TabAtkins> zcorpan: But we still need to specify a normalization form to do that.
- # [23:56] <zcorpan> why?
- # [23:56] * Quits: ehsan (~ehsan@66.207.208.102) (Ping timeout: 264 seconds)
- # [23:58] <TabAtkins> Because given var-Á, whether it's encoded as A followed by combining acute accent or as A with acute accent changes what code units it's using.
- # [23:58] <TabAtkins> And whether it sorts before or after var-B.
- # [23:59] * Quits: css (~css@unaffiliated/css) (Ping timeout: 248 seconds)
- # [23:59] <SimonSapin> TabAtkins: can’t we just ignore that and deal with code points?
- # [23:59] <zcorpan> do css parser normalize for e.g. selectors?
- # [23:59] <TabAtkins> Not specified.
- # [23:59] <TabAtkins> Unfortunately.
- # [23:59] <zcorpan> what about impls?
- # [23:59] <TabAtkins> SimonSapin: Code points gives you the same problem.
- # Session Close: Wed Sep 04 00:00:00 2013
The end :)