/irc-logs / freenode / #whatwg / 2008-12-18 / end

Options:

  1. # Session Start: Thu Dec 18 00:00:00 2008
  2. # Session Ident: #whatwg
  3. # [00:00] * Joins: aaronlev (n=chatzill@e176248168.adsl.alicedsl.de)
  4. # [00:00] <yecril71> If Siemens is a name of a person, the browser can offer to find his blog/avatar/whatever.
  5. # [00:00] * gsnedders doubts browsers will ever implement such a thing
  6. # [00:00] <yecril71> If Siemens is a foreign word, the browser can offer to translate it.
  7. # [00:01] <Hixie> or if they do, they'll do it like IE8 does
  8. # [00:01] <Hixie> and just have the user select the text
  9. # [00:01] <yecril71> Microsoft Word (which is not a browser) has been doing that for some time now.
  10. # [00:01] <yecril71> It is called "intelligent tags" in MSspeak.
  11. # [00:02] * Joins: jruderman (n=jruderma@corp-241.mountainview.mozilla.com)
  12. # [00:02] * gsnedders notes OS X (and through it all browsers on OS X) support right click -> search with google
  13. # [00:03] <yecril71> Of course, but a specific search is sometimes better than a general search.
  14. # [00:03] * Philip` notes that Opera does too
  15. # [00:03] <gsnedders> yecril71: The question is where do you search?
  16. # [00:03] <Philip`> (Also Opera provides a "search with" menu so you can select specialist search engines)
  17. # [00:04] <yecril71> Where to search depends on what to search for.
  18. # [00:04] <yecril71> And that is semantic information.
  19. # [00:04] <gsnedders> If you're searching for a person, where do you search for them?
  20. # [00:05] <yecril71> E.g. in Windows Live registry.
  21. # [00:05] <yecril71> (depends what I need to do).
  22. # [00:05] <yecril71> Or in Wikipedia.
  23. # [00:05] <gsnedders> The problem is there are so many places you could search
  24. # [00:06] <yecril71> People have habits and places, the browser can learn about them.
  25. # [00:07] <yecril71> If I do not use Skype, and am unwilling to, searching the Skype registry is useless for me.
  26. # [00:07] <yecril71> But perhaps not for you.
  27. # [00:08] <yecril71> But that is too much detail; I wanted to say that it would be useless to search a registry for people when a translation is needed.
  28. # [00:08] <yecril71> And vice versa.
  29. # [00:09] <gsnedders> I think the other main issue is complexity inevitably adds cost, and all programs should run in zero time ideally
  30. # [00:09] <yecril71> Microsoft definitely does not go that way.
  31. # [00:09] * Quits: hdh (n=hdh@118.71.125.158) (Read error: 110 (Connection timed out))
  32. # [00:10] <Philip`> gsnedders: It's not true that all programs should run in zero time ideally
  33. # [00:10] <gsnedders> Philip`: What shouldn't>
  34. # [00:10] <Philip`> gsnedders: e.g. you might have a stopwatch program
  35. # [00:10] <gsnedders> *?
  36. # [00:10] <gsnedders> Philip`: zero CPU time?
  37. # [00:11] * gsnedders waits for Philip` to find an issue with that too
  38. # [00:11] <Philip`> gsnedders: You might have an electric heater emulation program, which uses as much CPU time as possible in order to heat your room in the middle of winter when your central heating system has broken down
  39. # [00:12] * gsnedders notes he did once use a Power Mac G5 for exactly that use-case
  40. # [00:12] * yecril71 thinks he has such a program running on his machine
  41. # [00:12] <gsnedders> The only problem was it used CPU time making it slower for me to do what I wanted to do :(
  42. # [00:12] * yecril71 recalls it is called GIMPS
  43. # [00:13] <Philip`> gsnedders: Also there are games, where you have 1/60 seconds of CPU time that you might as well use as much as possible to get the best possible output
  44. # [00:13] <Philip`> gsnedders: That's what "nice" is for :-)
  45. # [00:13] <gsnedders> Philip`: nice has it's limitations :)
  46. # [00:13] <gsnedders> Philip`: It was still slightly slower :P
  47. # [00:13] <Philip`> s/'//
  48. # [00:13] * gsnedders is half asleep
  49. # [00:14] <gsnedders> Don't expect me to get stupid English right.
  50. # [00:14] <gsnedders> Apostrophe is possessive! "It's" therefore should be possessive!
  51. # [00:15] <Philip`> And so should "him's" and "me's"?
  52. # [00:15] <gsnedders> Philip`: Yes.
  53. # [00:15] <Philip`> and "you's"
  54. # [00:16] <gsnedders> Natural languages are stupid.
  55. # [00:16] <Philip`> and "us's"
  56. # [00:16] <yecril71> What about díya?
  57. # [00:16] <gsnedders> d'ya's?
  58. # [00:16] <Philip`> Natural languages have pronouns, which are very useful, and which most programming languages (except Perl) seem to lack :-)
  59. # [00:16] <yecril71> And except AppleScript
  60. # [00:17] * Quits: eric_carlson (n=ericc@adsl-67-112-12-110.dsl.anhm01.pacbell.net)
  61. # [00:17] <yecril71> (and Visual Basic has ME)
  62. # [00:18] <yecril71> (and Smalltalk has yourself)
  63. # [00:18] <yecril71> Ergo, AS + VBS + Smalltalk = full grammar :-)
  64. # [00:21] <takkaria> Perl has pronouncs?
  65. # [00:21] <heycam> my and our
  66. # [00:21] <yecril71> Only typographers would say that B is not semantic.
  67. # [00:21] <Philip`> takkaria: It has $_ which effectively means "it"
  68. # [00:22] <takkaria> true
  69. # [00:22] <Philip`> (since it's a way to refer to values without assigning a name to them)
  70. # [00:22] <yecril71> Bold has some meaning in real life too.
  71. # [00:22] <heycam> actually are "my" and "our" considered pronouns? i guess not. what part of speech are they?
  72. # [00:22] <blooberry> javascript has "this", but no "that"
  73. # [00:24] <Philip`> heycam: Even if they were pronouns in English, I wouldn't call them pronouns in Perl, since there's nothing pronounish about them except the interpretation of their names in English :-)
  74. # [00:24] <heycam> yes you're right
  75. # [00:24] * Philip` uses arguments called 'that' quite often in C++ and JS
  76. # [00:25] <yecril71> So does /ME
  77. # [00:25] <gsnedders> ewww
  78. # [00:25] <Philip`> like Integer::add(Integer that) { this.n += that.n; } and so on
  79. # [00:25] <gsnedders> confusing.
  80. # [00:25] <Philip`> Uh, this->n or whatever
  81. # [00:25] <gsnedders> how about "somethingElse"?
  82. # [00:25] * yecril71 thinks it is impossible to /ME in Irish
  83. # [00:25] <heycam> i think i usually use "other" for those kinds of arguments
  84. # [00:26] <yecril71> IRC is English-centric
  85. # [00:26] <Philip`> Integer::add(Integer that, Integer tother) { this->n += that.n + tother.n; }
  86. # [00:26] <gsnedders> yecril71: Depending on your client you may be able to map another command to /me
  87. # [00:26] * heycam wonders if the command should be /one
  88. # [00:27] <gsnedders> "We're one/But we're not the same"
  89. # [00:27] <yecril71> But I still cannot say
  90. # [00:27] <yecril71> Ta /ME go maith
  91. # [00:27] <yecril71> in /ME mode
  92. # [00:27] * gsnedders throws NotImplemented exception on the Irish
  93. # [00:28] * gsnedders heads off to bed
  94. # [00:28] <gsnedders> For the, uh, third time to do.
  95. # [00:28] <gsnedders> *today
  96. # [00:28] <heycam> OutOfPotatoesException
  97. # [00:30] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  98. # [00:30] * Joins: hdh00 (n=hdh@118.71.125.158)
  99. # [00:32] <Philip`> Oh, "x is y" seems to do identity comparison rather than equality comparison
  100. # [00:33] <Philip`> (which seems fine when y is None, because there's only one None object)
  101. # [00:33] <Philip`> (but doesn't work in general if y is a string)
  102. # [00:34] <yecril71> Except if strings are interned.
  103. # [00:34] <Philip`> In general, they aren't
  104. # [00:34] <takkaria> in Lua, == is always identity, so it's always uberfast
  105. # [00:34] <takkaria> works nicely when all strings are interned
  106. # [00:35] <Philip`> But then you have to pay the cost of interning all your strings
  107. # [00:36] <takkaria> Lua does it very fast
  108. # [00:36] <yecril71> I would say it would give positive ROI for well-written code.
  109. # [00:37] * Philip` has only ever used Lua for writing a build script
  110. # [00:37] <Philip`> It seems like a potentially interesting language
  111. # [00:38] <Hixie> lua's syntax baffles me
  112. # [00:38] <takkaria> it's a lovely language to work in, though it does lack a bit in utiity languages
  113. # [00:38] <Hixie> (it's the language for ion's configuration scripts)
  114. # [00:38] <takkaria> really? I always thought it was pretty simple
  115. # [00:39] <Hixie> i may have just not spent enough time learning it, or maybe ion does weird things to it
  116. # [00:39] <Hixie> but yeah
  117. # [00:39] <Hixie> it wasn't intuitive at all
  118. # [00:40] * Quits: aboodman2 (n=aboodman@72.14.229.81) (Read error: 110 (Connection timed out))
  119. # [00:41] <takkaria> I enjoy writing in Lua when I can. I wrote a fairly large project in it once, and have used it perephially in a bunch of things
  120. # [00:42] * Joins: weinig (n=weinig@nat/apple/x-864e6f2dc3fe5536)
  121. # [00:43] * Philip` looks at his [actually not really "his", someone else wrote most of it] build script, and sees that it's 1268 lines, which seems like quite a bit
  122. # [00:45] <yecril71> Media-specific markup is good when it addresses media-specific properties.
  123. # [00:45] <yecril71> But then, since they are media-specific by definition, they do not need the media-specific tag at all.
  124. # [00:48] * Quits: hdh0 (n=hdh@118.71.125.158) (Read error: 110 (Connection timed out))
  125. # [00:51] <yecril71> Calogero wanted to say that he has no idea how to map B et al. to real-world semantic notions.
  126. # [00:53] * hallvors wonders why Hotmail's compose feature is broken in EVERY UA.. Fx3, Safari, IE8, Opera 10, Opera 9 - makes it sort of hard to figure out what is supposed to happen to enable the editor..
  127. # [00:53] <yecril71> And that he would like HTML to be more precise, and that they always bear the same meaning.
  128. # [00:55] <yecril71> I think link[sizes] should really use &times;
  129. # [00:55] <yecril71> You are encouraging bad practice here.
  130. # [01:00] <yecril71> Cameronís algorithm leaves the case for a missing key unspecified.
  131. # [01:00] <heycam> yecril71, in web idl? or in the suggested text in the mail?
  132. # [01:01] <yecril71> In the text.
  133. # [01:01] <yecril71> How is all this different from what a generic Object does?
  134. # [01:01] * Quits: dolske (n=dolske@firefox/developer/dolske)
  135. # [01:01] <heycam> how is it unspecified?
  136. # [01:02] <yecril71> What happens if the key is absent?
  137. # [01:02] <yecril71> You say "
  138. # [01:02] <yecril71> the entry whose name component"
  139. # [01:02] <yecril71> as if it always existed
  140. # [01:02] <heycam> that behaviour for retrieving a named property would only get run if there exists a named property on the object already
  141. # [01:02] * Joins: dolske (n=dolske@corp-241.mountainview.mozilla.com)
  142. # [01:03] <heycam> if you do dataset.abc, and abc wasn't the name of one of these named property (because it's defined at a given time what those properties are), then it's just a regular property lookup that will return undeifned
  143. # [01:03] <heycam> *undefined
  144. # [01:04] <yecril71> Got it. How is it different from what Object has?
  145. # [01:05] <heycam> it's different because it invokes particular behaviour when named properties are get/set/etc., which for dataset results in attributes being get/set/removed
  146. # [01:05] <heycam> and for dataset, when setting the property the value is converted to a string
  147. # [01:05] * Quits: dglazkov (n=dglazkov@nat/google/x-32a458f7ca805563)
  148. # [01:05] <yecril71> I see, thanks.
  149. # [01:18] * Joins: tantek (n=tantek@c-67-161-5-143.hsd1.ca.comcast.net)
  150. # [01:18] * Quits: dolske (n=dolske@firefox/developer/dolske) (Read error: 110 (Connection timed out))
  151. # [01:27] * Quits: virtuelv (n=virtuelv@74.80-202-66.nextgentel.com) (Read error: 145 (Connection timed out))
  152. # [01:31] * Joins: aboodman2 (n=aboodman@72.14.229.81)
  153. # [01:32] * Quits: nessy (n=nessy@124-171-30-131.dyn.iinet.net.au) (Read error: 104 (Connection reset by peer))
  154. # [01:32] * Joins: nessy (n=nessy@124-171-30-131.dyn.iinet.net.au)
  155. # [01:33] * Quits: aaronlev (n=chatzill@e176248168.adsl.alicedsl.de) ("ChatZilla 0.9.84-rdmsoft [XULRunner 1.9.0.1/2008072406]")
  156. # [01:35] * Quits: yecril71 (n=giecrilj@piekna-gts.2a.pl)
  157. # [01:36] * Quits: hallvors (n=hallvord@pat-tdc.opera.com)
  158. # [01:37] * Quits: aroben (n=aroben@unaffiliated/aroben) ("Leaving")
  159. # [01:37] * Quits: karlcow (n=karl@modemcable168.84-81-70.mc.videotron.ca) ("This computer has gone to sleep")
  160. # [01:39] * Quits: fakeolliej (n=oliver@nat/apple/x-6719bc6c3eb4f164)
  161. # [01:49] * Quits: dave_levin (n=dave_lev@72.14.227.1) (Read error: 110 (Connection timed out))
  162. # [01:51] * Joins: weinig_ (n=weinig@17.244.17.80)
  163. # [01:54] * Quits: weinig (n=weinig@nat/apple/x-864e6f2dc3fe5536) (Read error: 60 (Operation timed out))
  164. # [02:09] * fishd is now known as fishd_afk
  165. # [02:09] * fishd_afk is now known as fishd|away
  166. # [02:25] * Joins: dave_levin (n=dave_lev@c-98-203-247-78.hsd1.wa.comcast.net)
  167. # [02:28] * Quits: svl (n=me@86.87.68.167) ("And back he spurred like a madman, shrieking a curse to the sky.")
  168. # [02:33] * Joins: eric_carlson (n=ericc@adsl-67-112-12-110.dsl.anhm01.pacbell.net)
  169. # [02:38] * Joins: olliej (n=oliver@nat/apple/x-ba971fbbcb5ec467)
  170. # [02:49] * Quits: Amorphous (i=jan@unaffiliated/amorphous) (Read error: 110 (Connection timed out))
  171. # [02:50] * Joins: weinig (n=weinig@nat/apple/x-bb2f60848ff4c78c)
  172. # [02:52] * Quits: weinig_ (n=weinig@17.244.17.80) (Read error: 60 (Operation timed out))
  173. # [02:53] * Joins: Amorphous (i=jan@unaffiliated/amorphous)
  174. # [02:53] * Quits: kingryan (n=ryan@adsl-99-50-23-198.dsl.pltn13.sbcglobal.net)
  175. # [03:13] * Quits: hdh00 (n=hdh@118.71.125.158) (Remote closed the connection)
  176. # [03:14] * Quits: MikeSmith (n=MikeSmit@58.157.21.205) ("sex break")
  177. # [03:17] * Quits: tantek (n=tantek@c-67-161-5-143.hsd1.ca.comcast.net) (Read error: 60 (Operation timed out))
  178. # [03:18] * Quits: dave_levin (n=dave_lev@c-98-203-247-78.hsd1.wa.comcast.net)
  179. # [03:19] * Joins: dave_levin (n=dave_lev@72.14.224.1)
  180. # [03:22] * Joins: tantek (n=tantek@c-67-161-5-143.hsd1.ca.comcast.net)
  181. # [03:23] * Joins: tantek_ (n=tantek@c-67-161-5-143.hsd1.ca.comcast.net)
  182. # [03:40] * Quits: tantek (n=tantek@c-67-161-5-143.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  183. # [03:46] * Quits: heycam (n=cam@clm-laptop.infotech.monash.edu.au) ("bye")
  184. # [03:51] * Quits: aboodman2 (n=aboodman@72.14.229.81) (Read error: 60 (Operation timed out))
  185. # [04:30] * Quits: dbaron (n=dbaron@corp-241.mountainview.mozilla.com) ("8403864 bytes have been tenured, next gc will be global.")
  186. # [04:42] * Joins: dglazkov (n=dglazkov@c-24-130-144-56.hsd1.ca.comcast.net)
  187. # [04:44] * Quits: tantek_ (n=tantek@c-67-161-5-143.hsd1.ca.comcast.net)
  188. # [04:45] * Joins: dglazkov_ (n=dglazkov@72.14.224.1)
  189. # [04:50] * Joins: eric_carlson_ (n=ericc@adsl-67-112-12-110.dsl.anhm01.pacbell.net)
  190. # [04:54] * Quits: dglazkov (n=dglazkov@c-24-130-144-56.hsd1.ca.comcast.net) (Read error: 60 (Operation timed out))
  191. # [04:54] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  192. # [04:56] * Quits: eric_carlson (n=ericc@adsl-67-112-12-110.dsl.anhm01.pacbell.net) (Read error: 110 (Connection timed out))
  193. # [04:57] * dglazkov_ is now known as dglazkov
  194. # [05:07] * Joins: MikeSmith (n=MikeSmit@dhcp-246-3.mag.keio.ac.jp)
  195. # [05:18] <MikeSmith> http://www.w3.org/2008/12/17-w3m-irc.html
  196. # [05:20] <MikeSmith> oops
  197. # [05:20] <MikeSmith> sorry
  198. # [05:37] * Quits: dglazkov (n=dglazkov@72.14.224.1)
  199. # [05:44] * Joins: kangax (n=kangax@ool-182f8118.dyn.optonline.net)
  200. # [05:52] * Quits: roc_ (n=roc@202.0.36.64)
  201. # [05:57] * Joins: aboodman2 (n=aboodman@dsl081-073-212.sfo1.dsl.speakeasy.net)
  202. # [05:59] * Joins: karlcow (n=karl@modemcable024.84-81-70.mc.videotron.ca)
  203. # [06:04] * Joins: shepazu (n=schepers@dsl093-172-164.pit1.dsl.speakeasy.net)
  204. # [06:16] * Quits: nessy (n=nessy@124-171-30-131.dyn.iinet.net.au) ("This computer has gone to sleep")
  205. # [06:17] * Quits: doublec (n=chris@202.0.36.64) ("Leaving")
  206. # [06:19] * Joins: deane (n=opera@121-72-163-146.dsl.telstraclear.net)
  207. # [06:22] * Quits: deane (n=opera@121-72-163-146.dsl.telstraclear.net) (Read error: 104 (Connection reset by peer))
  208. # [06:23] * Quits: tndH (n=Rob@adsl-87-102-93-106.karoo.KCOM.COM) (Read error: 110 (Connection timed out))
  209. # [06:23] * Joins: tndH (n=Rob@adsl-83-100-138-116.karoo.KCOM.COM)
  210. # [06:31] * Joins: doublec (n=chris@118-92-151-230.dsl.dyn.ihug.co.nz)
  211. # [06:50] * Quits: aboodman (n=aboodman@72.14.229.81)
  212. # [06:50] * Joins: aboodman (n=aboodman@72.14.229.81)
  213. # [06:57] * Quits: weinig (n=weinig@nat/apple/x-bb2f60848ff4c78c)
  214. # [07:39] * Quits: karlcow (n=karl@modemcable024.84-81-70.mc.videotron.ca) ("This computer has gone to sleep")
  215. # [07:45] * Quits: gavin_ (n=gavin@firefox/developer/gavin) (Read error: 145 (Connection timed out))
  216. # [07:47] * Joins: gavin_ (n=gavin@firefox/developer/gavin)
  217. # [07:47] * Quits: jruderman (n=jruderma@corp-241.mountainview.mozilla.com)
  218. # [07:49] * jwalden is now known as Waldo|awol
  219. # [07:52] * Quits: famicom (i=famicom@5ED2FF2D.cable.ziggo.nl) ("Leaving")
  220. # [07:56] * Joins: karlcow (n=karl@modemcable057.209-70-69.mc.videotron.ca)
  221. # [08:07] * Joins: ap (n=ap@195.239.126.12)
  222. # [08:08] * Joins: weinig (n=weinig@c-69-181-81-233.hsd1.ca.comcast.net)
  223. # [08:21] <MikeSmith> Philip`: can you remind me where source for your spec splitter is?
  224. # [08:21] <MikeSmith> and what structure does it expect in the source doc it's meant to split?
  225. # [08:26] * Quits: doublec (n=chris@118-92-151-230.dsl.dyn.ihug.co.nz) ("Leaving")
  226. # [08:26] * Joins: maikmerten (n=merten@ls5dhcp195.cs.uni-dortmund.de)
  227. # [08:31] * Quits: MikeSmith (n=MikeSmit@dhcp-246-3.mag.keio.ac.jp) ("sex break")
  228. # [08:32] * Joins: jruderman (n=jruderma@c-67-180-39-55.hsd1.ca.comcast.net)
  229. # [08:34] * Joins: pesla (n=retep@procurios.xs4all.nl)
  230. # [08:43] * Joins: Maurice (n=ano@a80-101-46-164.adsl.xs4all.nl)
  231. # [08:45] * Quits: kangax (n=kangax@ool-182f8118.dyn.optonline.net)
  232. # [08:46] * Joins: roc (n=roc@121-72-167-250.dsl.telstraclear.net)
  233. # [08:48] * Quits: weinig (n=weinig@c-69-181-81-233.hsd1.ca.comcast.net)
  234. # [09:03] * Joins: jruderman_ (n=jruderma@c-67-180-39-55.hsd1.ca.comcast.net)
  235. # [09:04] * Quits: jruderman_ (n=jruderma@c-67-180-39-55.hsd1.ca.comcast.net) (Client Quit)
  236. # [09:04] * Quits: jruderman (n=jruderma@c-67-180-39-55.hsd1.ca.comcast.net)
  237. # [09:04] * Joins: jruderman (n=jruderma@c-67-180-39-55.hsd1.ca.comcast.net)
  238. # [09:06] * Joins: jruderman_ (n=jruderma@c-67-180-39-55.hsd1.ca.comcast.net)
  239. # [09:06] * Quits: jruderman_ (n=jruderma@c-67-180-39-55.hsd1.ca.comcast.net) (Client Quit)
  240. # [09:08] * Quits: jruderman (n=jruderma@c-67-180-39-55.hsd1.ca.comcast.net) (Client Quit)
  241. # [09:08] * Joins: jruderman (n=jruderma@c-67-180-39-55.hsd1.ca.comcast.net)
  242. # [09:12] * Joins: dolske (n=dolske@c-76-103-41-195.hsd1.ca.comcast.net)
  243. # [09:32] * Joins: aaronlev (n=chatzill@f051196203.adsl.alicedsl.de)
  244. # [09:54] <Philip`> MikeSmith: http://code.google.com/p/html5/source/browse/trunk/spec-splitter/spec-splitter.py
  245. # [09:55] <Philip`> It expects the source document to be the HTML5 spec
  246. # [09:57] <Philip`> thought it may not be too hard to modify for other documents, mostly by modifying the split_exceptions variable (which defines some ids to split on, in addition to the default of all <h2>)
  247. # [09:57] <Philip`> *though
  248. # [10:07] * Joins: mstange (n=markus@aixd3.rhrk.uni-kl.de)
  249. # [10:10] * jgraham apologises for breaking the meta tag handling in html5lib
  250. # [10:11] <jgraham> We need to implement the character encoding changing stuff
  251. # [10:11] <jgraham> Also maybe it would be a performance win to intern tag names and then compare with is rather than == in the tree builder?
  252. # [10:12] <takkaria> a massive perf win, I'd have thought
  253. # [10:13] <jgraham> takkaria: I guess that depends on how slow interning strings is and whether Philip` implements it or me :)
  254. # [10:14] * Quits: mstange (n=markus@aixd3.rhrk.uni-kl.de) ("ChatZilla 0.9.84 [Firefox 3.2a1pre/20081216020422]")
  255. # [10:14] <Philip`> The entire tree builder has very little cost compared to the tokeniser, as far as I can tell
  256. # [10:15] <takkaria> Hubbub doesn't intern tag names yet, and some 20% of runtime is spent in string comparisons on tag names ATM, IIRC
  257. # [10:16] <Philip`> Actually, I suppose "very little" might really mean "about a third of total runtime", which is still significant
  258. # [10:16] <Philip`> String comparison in Python is implemented in C, so it's relatively fast - I think it's all the Pythonic bits that are taking all the time
  259. # [10:33] * Quits: aaronlev (n=chatzill@f051196203.adsl.alicedsl.de) ("ChatZilla 0.9.84-rdmsoft [XULRunner 1.9.0.1/2008072406]")
  260. # [10:35] * Joins: ROBOd (n=robod@89.122.216.38)
  261. # [10:38] * erlehmann is now known as erlehmann-irc
  262. # [10:42] * Joins: aaronlev (n=chatzill@f051196203.adsl.alicedsl.de)
  263. # [10:42] * jgraham is pretty sure you can't solve a theroem
  264. # [10:46] * Joins: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com)
  265. # [10:46] <Philip`> Is it not reasonable to say that e.g. Fermat's Last Theorem has been solved?
  266. # [10:52] * Joins: erlehmann (n=erlehman@86.59.25.121)
  267. # [10:52] * Parts: erlehmann-irc (n=erlehman@dslb-088-075-080-123.pools.arcor-ip.net) ("Ex-Chat")
  268. # [10:52] * Joins: Mau`werk (n=ano@a80-101-46-164.adsl.xs4all.nl)
  269. # [10:54] * Joins: nessy (n=nessy@124-171-30-131.dyn.iinet.net.au)
  270. # [11:00] * Quits: Maurice (n=ano@a80-101-46-164.adsl.xs4all.nl) (Read error: 110 (Connection timed out))
  271. # [11:03] * Quits: Lachy (n=Lachlan@85.196.122.246) ("This computer has gone to sleep")
  272. # [11:08] <jgraham> Philip`: I guess that is common although I think it is inaccurate (should be Fermat's Last Theroem has been proven or something). However I'm the example in the spec that talks about "Solving Pythagoras' theorem" to mean "solving for the third side of a triangle given the other two sides" seems more wrong
  273. # [11:09] * Quits: pergj (n=pergj@home.kvaleberg.no) (Read error: 113 (No route to host))
  274. # [11:10] * Philip` supposes it should have been called Fermat's Last Hypothesis
  275. # [11:14] <Philip`> jgraham: The spec says it's 'solving for some variable', which seems a different meaning to simply 'solving'
  276. # [11:20] <Philip`> (It seems probably clear enough that it means it's taking an equational form of Pythagoras' Theorem and solving that equation in terms of some variable, which is what it's doing)
  277. # [11:28] * Joins: Lachy (n=Lachlan@pat-tdc.opera.com)
  278. # [11:43] * Quits: aboodman2 (n=aboodman@dsl081-073-212.sfo1.dsl.speakeasy.net) (Read error: 110 (Connection timed out))
  279. # [12:37] <jgraham> Philip`: I could tell what it was talking about but I still don't think that a theroem is something you can solve.
  280. # [12:42] * Quits: xcombelle (n=chatzill@AToulouse-158-1-24-63.w90-50.abo.wanadoo.fr) (Read error: 60 (Operation timed out))
  281. # [13:02] * Joins: MikeSmith (n=MikeSmit@58.157.21.205)
  282. # [13:05] * olliej is now known as fakeolliej
  283. # [13:44] * eric_carlson_ is now known as eric_carlson
  284. # [13:52] * Joins: svl (n=me@ip565744a7.direct-adsl.nl)
  285. # [14:04] * Quits: nessy (n=nessy@124-171-30-131.dyn.iinet.net.au) ("This computer has gone to sleep")
  286. # [14:14] * Quits: karlcow (n=karl@modemcable057.209-70-69.mc.videotron.ca) ("This computer has gone to sleep")
  287. # [14:15] * Joins: mstange (n=markus@aixd3.rhrk.uni-kl.de)
  288. # [14:16] * Joins: karlcow (n=karl@modemcable057.209-70-69.mc.videotron.ca)
  289. # [14:18] * Parts: erlehmann (n=erlehman@86.59.25.121)
  290. # [14:22] * Joins: virtuelv (n=virtuelv@213.236.208.247)
  291. # [14:24] * Quits: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com)
  292. # [14:28] * Joins: Hish (n=chatzill@mail2.n-e-s.de)
  293. # [14:32] * Joins: myakura (n=myakura@p4200-ipbf2306marunouchi.tokyo.ocn.ne.jp)
  294. # [14:33] * Joins: aroben (n=aroben@unaffiliated/aroben)
  295. # [14:34] * Quits: eric_carlson (n=ericc@adsl-67-112-12-110.dsl.anhm01.pacbell.net)
  296. # [14:38] * Joins: yecril71 (n=giecrilj@piekna-gts.2a.pl)
  297. # [14:40] <yecril71> A popup window can accomodate to page size.
  298. # [14:41] * Quits: myakura (n=myakura@p4200-ipbf2306marunouchi.tokyo.ocn.ne.jp) ("Leaving...")
  299. # [14:47] * Joins: myakura (n=myakura@p4200-ipbf2306marunouchi.tokyo.ocn.ne.jp)
  300. # [14:48] <Philip`> html5lib r1233 takes 16.1 seconds to parse the HTML5 spec
  301. # [14:48] <Philip`> html5lib r1241 takes 13.1 seconds to parse the HTML5 spec
  302. # [14:48] * Joins: kangax (n=kangax@ool-182f8118.dyn.optonline.net)
  303. # [14:48] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  304. # [14:48] <Philip`> I suppose that's not an entirely worthless improvement
  305. # [14:50] <MikeSmith> Philip`: !
  306. # [14:50] <MikeSmith> you spec splitter, can you remind me where the source is?
  307. # [14:50] * Joins: zcorpan (n=zcorpan@c83-252-193-84.bredband.comhem.se)
  308. # [14:51] <Philip`> MikeSmith: http://krijnhoetmer.nl/irc-logs/whatwg/20081218#l-244
  309. # [14:52] <MikeSmith> ah, thanks
  310. # [14:53] <MikeSmith> dunno why I didn't see that before
  311. # [14:53] * Quits: virtuelv (n=virtuelv@213.236.208.247) ("Leaving")
  312. # [14:54] <MikeSmith> OK, so it splits on all H2s? (plus whatever IDs are in split_exceptions)
  313. # [14:54] <Philip`> Yes (except in things with class="no-toc")
  314. # [14:54] <Philip`> Uh, I mean:
  315. # [14:54] <Philip`> Yes (except for H2s with class="no-toc")
  316. # [14:55] <Philip`> No, I don't mean that
  317. # [14:55] <Philip`> Yes (except for anything before the first H2 without class="no-toc")
  318. # [14:56] <Philip`> Hmm, html5lib parses in 12.2 seconds if I make it use a string for input (instead of a stream)
  319. # [14:57] * Joins: hdh (n=hdh@118.71.123.136)
  320. # [14:58] <jgraham> ?!
  321. # [14:59] <jgraham> That seems odd. I thought we had to work to make strings look like file-like objects
  322. # [14:59] <Dashiva> stringio?
  323. # [15:00] <jgraham> iirc
  324. # [15:00] <Philip`> jgraham: Uh, I mean: ...if I make it use a string for input (instead of a stream) and change HTMLInputStream to behave more efficiently when it's got a string as input
  325. # [15:01] <Philip`> (There's no point messing around with chunks and unget buffers if you've already got the entire string stored in memory)
  326. # [15:01] <jgraham> Well that sounds more sensible ;)
  327. # [15:02] <Philip`> If I also disable the position-recording code, it parses in 11.4 seconds
  328. # [15:03] <Philip`> Might it be reasonable to add a constructor argument to disable position computation, which people can use if they're sure never going to care about positions (e.g. they're not going to look at parse error messages)?
  329. # [15:03] <jgraham> Philip`: Can you put a profile somewhere?
  330. # [15:05] <Dashiva> Philip`: How much do you unget in the worst cases? Enough that a double buffer for the file IO wouldn't be practical?
  331. # [15:05] * Quits: broquaint (i=aa4aedcc@spc1-brig11-0-0-cust544.asfd.broadband.ntl.com) (Remote closed the connection)
  332. # [15:06] * jgraham wonders hat a double buffer is
  333. # [15:08] * Joins: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com)
  334. # [15:08] <Philip`> jgraham: Something like http://philip.html5.org/misc/html5lib-profile-r1241.txt ?
  335. # [15:08] <Philip`> Dashiva: One character
  336. # [15:09] <Philip`> jgraham: (That's from running parse.py --no-html -t)
  337. # [15:10] <Philip`> jgraham: (with the input being the HTML5 spec from 25 July 2008)
  338. # [15:10] <Dashiva> jgraham: (in this case) keeping two buffers so you can read into one and still have the other available for use. That way you always have old data available for ungetting
  339. # [15:12] * Philip` notes that the current tokeniser updatePosition function is pretty much entirely unrelated to the function that was called updatePosition in the last-but-one revision of html5lib
  340. # [15:13] <Philip`> (Now it's the thing that counts newlines in the string returned from charsUntil, to update the position information)
  341. # [15:13] <jgraham> Philip`: Like that but sorted by total time rather than cumulative time, I guess
  342. # [15:15] <Philip`> jgraham: http://philip.html5.org/misc/html5lib-profile-r1241-2.txt ?
  343. # [15:20] * Quits: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com) (Read error: 54 (Connection reset by peer))
  344. # [15:21] * Joins: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com)
  345. # [15:21] <Philip`> (There is a sadly a lack of blatant bottlenecks :-( )
  346. # [15:28] * Quits: gavin (n=gavin@firefox/developer/gavin) (Remote closed the connection)
  347. # [15:28] * Joins: gavin (n=gavin@people.mozilla.com)
  348. # [15:29] <zcorpan> who's up for a naming debate? http://www.w3.org/Bugs/Public/show_bug.cgi?id=6298
  349. # [15:30] * Quits: kangax (n=kangax@ool-182f8118.dyn.optonline.net)
  350. # [15:30] <Dashiva> I'm all out of bikes to shed
  351. # [15:30] * Joins: broquaint (i=1007b358@spc1-brig11-0-0-cust544.asfd.broadband.ntl.com)
  352. # [15:32] <jgraham> zcorpan: HTML5 (All Your Error Are Belong To Us) should cover it I think
  353. # [15:32] <jgraham> Philip`: Indeed. Maybe we could just get Hixie to remove stuff from the spec so we have fewer tokens to process
  354. # [15:33] <zcorpan> or make everything valid so you don't need to spend time reporting errors
  355. # [15:34] <Philip`> zcorpan: It spends almost no time reporting errors in my profiling, since the input only has one error (missing doctype)
  356. # [15:34] <zcorpan> oh. ok
  357. # [15:35] <Philip`> (It's intentional that I'm profiling the parsing of the spec, rather than of more realistic web content, because my use case for html5lib is parsing the HTML5 spec and so that's what I want to optimise for)
  358. # [15:35] <Philip`> (If someone else wants to use html5lib for parsing loads of invalid content, they can optimise those parts themselves :-) )
  359. # [15:37] <Philip`> jgraham: He's already added 25% more bytes to the spec than the version I've been using :-(
  360. # [15:39] <jgraham> Philip`: Well that's no good at all.
  361. # [15:39] <Philip`> (Actually I've mostly been testing with the first 10^4 lines of the spec, because I'm too lazy to wait for the entire thing to be parsed every time I make a change)
  362. # [15:51] * Quits: myakura (n=myakura@p4200-ipbf2306marunouchi.tokyo.ocn.ne.jp) ("Leaving...")
  363. # [15:58] <yecril71> I do not think authors think about tags at all, they just want to publish information.
  364. # [16:00] <yecril71> 18 comparisons would be enough for 2^17 insertion modes.
  365. # [16:01] <Philip`> "if an end user finds an error, he probably will report it to the owner of the web site, who in turn will report it (quite angrily) to web designer." - I don't think that's true - if I find an error on a web site, I just moan about it on IRC
  366. # [16:02] <yecril71> I sometimes do when the site steps on my toes too heavily.
  367. # [16:02] <yecril71> But I am not an ordinary end user anyway.
  368. # [16:03] <Philip`> If it's an ill-formed XML error, I'd find it hard to report to the owner even if I wanted to, because it would prevent me from reading their site and finding the contact details
  369. # [16:03] <yecril71> You can look for @ in the page source.
  370. # [16:04] <yecril71> (if it is not disguised as something else, that is)
  371. # [16:04] <yecril71> Frex, I reported the CSS proble with the spec to Ian, and he boldly ignored my complaint.
  372. # [16:05] <Philip`> I'm far too lazy to do that
  373. # [16:05] <yecril71> I have had more success with less knowledgeable webmasters though :-)
  374. # [16:06] <yecril71> Especially if they boast the W3C badge.
  375. # [16:08] <yecril71> Is cross-domain xsl:import guaranteed to throw?
  376. # [16:08] * Philip` remembers (a very long time ago) using imdb.com as an example of why the <image> tag has to be supported, and someone saying that they were going to notify the IMDB web people about the problem as a demonstration that it's possible to clean up that kind of legacy mistake
  377. # [16:08] <Philip`> ...and imdb.com still uses <image> today :-(
  378. # [16:09] <yecril71> Ian belongs to the minority who reply there is a problem with my browser.
  379. # [16:10] <yecril71> I have just got a similar response from Apple.
  380. # [16:10] <yecril71> But Ian was at least right, while Apple is wrong.
  381. # [16:14] <yecril71> html5lib is an implementation of HTML5 parser.
  382. # [16:14] * Philip` is aware of that :-p
  383. # [16:15] <yecril71> <div><p>some text<p>some more text</p></p></div> is correct but it amounts to three paragraphs instead of two.
  384. # [16:15] <Dashiva> An unmatched </p> is correct?
  385. # [16:16] <yecril71> Isnít it?
  386. # [16:17] * Joins: dglazkov (n=dglazkov@c-24-130-144-56.hsd1.ca.comcast.net)
  387. # [16:17] <yecril71> The opening tag is optional so it can be inserted when needed.
  388. # [16:18] <yecril71> I do not think optional tags are a result of guessing.
  389. # [16:19] <Dashiva> If the stack of open elements does not have an element in scope with the same tag name as that of the token, then this is a parse error; act as if a start tag with the tag name p had been seen, then reprocess the current token.
  390. # [16:19] <yecril71> I think they are rather straightforward to invent.
  391. # [16:19] <yecril71> And what about <div >&nbsp;</p >?
  392. # [16:19] * Joins: eric_carlson (n=ericc@nat/apple/x-e826ac79a7085607)
  393. # [16:20] <Dashiva> That's <div>[text:&nbsp;]<p></p> as far as I can see
  394. # [16:21] <yecril71> That would be a change from HTML4 IMHO.
  395. # [16:21] <zcorpan> yecril71: <p> is not optional
  396. # [16:22] <Dashiva> Yeah, it was mandatory in html4 too
  397. # [16:23] * yecril71 is ashamed for talking rubbish
  398. # [16:24] * Quits: svl (n=me@ip565744a7.direct-adsl.nl) ("And back he spurred like a madman, shrieking a curse to the sky.")
  399. # [16:26] <yecril71> You cannot check every input after publishing; there are exponentially many ways to arrange things.
  400. # [16:26] * Joins: kangax (n=kangax@74.201.136.194)
  401. # [16:27] <yecril71> Giovanni should be given the title Master of Colourful Narration.
  402. # [16:28] * Philip` discovers that his view of the world has been entirely wrong
  403. # [16:28] <Dashiva> What was it this time, Philip`?
  404. # [16:28] <Philip`> I thought calling charsUntil() would be faster than repeatedly calling char(), but it turns out that it's not :-(
  405. # [16:28] <Philip`> at least for short strings
  406. # [16:28] <Philip`> like tag names
  407. # [16:29] <jgraham> Oh. That sucks. Can't we make charsUntil faster
  408. # [16:29] <jgraham> ?
  409. # [16:29] <Philip`> If I'm not doing something stupid, removing the charsUntil from tagNameState makes parsing go ~3% faster
  410. # [16:30] <Philip`> jgraham: It seems there's a tradeoff in charsUntil between being efficient for short strings and being efficient for long strings
  411. # [16:30] <yecril71> I actually need HTML.
  412. # [16:31] <Philip`> Currently it constructs a regex for each set of characters, and then matches that against the input document
  413. # [16:31] <yecril71> Typing </td ><td > and </li ><li > makes me sick.
  414. # [16:32] <Philip`> which I suppose is adding some fixed overhead that doesn't pay off when you're typically going to be finding two characters
  415. # [16:32] <Philip`> (though it's very helpful in dataState, where you might be finding hundreds of characters before the next '<' or '&')
  416. # [16:32] <jgraham> Philip`: How about a non-regexp version of charsUntil that just has a while loop or something?
  417. # [16:33] <Philip`> jgraham: How would we decide which version of charsUntil to call?
  418. # [16:33] * Joins: dglazkov_ (n=dglazkov@72.14.224.1)
  419. # [16:34] * Quits: Lachy (n=Lachlan@pat-tdc.opera.com) ("This computer has gone to sleep")
  420. # [16:35] <jgraham> Philip`: Assume that character strings are typically long and markup strings are typically short?
  421. # [16:36] <Dashiva> data-* (and maybe aria?) might be trouble
  422. # [16:36] <jgraham> Dashiva: They are rather uncommon though
  423. # [16:41] <Philip`> Looks like the cross-over point is when you're matching six characters
  424. # [16:41] <Philip`> (Below that, a loop is faster; above that, the regex is faster)
  425. # [16:47] * Quits: aaronlev (n=chatzill@f051196203.adsl.alicedsl.de) (Read error: 60 (Operation timed out))
  426. # [16:48] <zcorpan> so use loop for tag names and attribute names, maybe unquoted attribute value...?
  427. # [16:48] * Quits: dglazkov_ (n=dglazkov@72.14.224.1)
  428. # [16:49] <Philip`> I think I'd prefer the idea of gathering statistics rather than guessing :-)
  429. # [16:50] <Philip`> Only problem is I don't know how to do that
  430. # [16:50] * zcorpan was looking at http://canvex.lazyilluminati.com/survey/2007-07-17/analyse.cgi/index
  431. # [16:50] <Philip`> Does Python provide an easy way to find your caller's function name?
  432. # [16:51] <Dashiva> When I tried, it was all hacky and ugly, looking at stack frames
  433. # [16:51] * Quits: dglazkov (n=dglazkov@c-24-130-144-56.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  434. # [16:52] * Quits: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com)
  435. # [16:53] * Joins: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com)
  436. # [16:53] <Philip`> sys._getframe(1).f_code.co_name - that seems to work
  437. # [16:55] * jgraham would just have parsed something and done the stats on the resulting tree
  438. # [16:56] <jgraham> (But I would like an instrumented version of html5lib that showed the call sequence and arguments for any input so that you could tell what was going wrong)
  439. # [16:56] <jgraham> In fact I sort of wrote that once for making graphs of the phase transitions but I deleted it because it was even more ugly than normal
  440. # [16:57] <Philip`> jgraham: The tree doesn't give you the right information about charsUntil
  441. # [16:58] <Philip`> e.g. it won't tell you that the whitespace bit in dataState will read an average of 3.3 characters
  442. # [16:58] <Philip`> (because in the tree it'll be merged with all the other characters)
  443. # [16:58] * Quits: maikmerten (n=merten@ls5dhcp195.cs.uni-dortmund.de) (Remote closed the connection)
  444. # [17:01] <jgraham> Philip`: Right, it maybe doesn't give you everything you want but it allows determinations of the length of e.g. comments, tag names, etc.
  445. # [17:02] <jgraham> You are also limited by the input data that you measure, regardless of what the method is
  446. # [17:03] <zcorpan> jgraham: Philip` only cares about the html5 spec, remember :)
  447. # [17:04] * Quits: Mau`werk (n=ano@a80-101-46-164.adsl.xs4all.nl) ("Disconnected...")
  448. # [17:04] * Joins: Lachy (n=Lachlan@85.196.122.246)
  449. # [17:04] <gsnedders> We could just rewrite it to be a C extension
  450. # [17:04] <gsnedders> That'd be quick.
  451. # [17:05] <Philip`> A pure Python parser is more usable than one that relies on C
  452. # [17:06] <gsnedders> Philip`: A C one is quicker.
  453. # [17:07] * Joins: billmason (n=bmason@ip55.unival.com)
  454. # [17:08] <Philip`> jgraham: Lengths of comments aren't quite the right information to gather - it's the length of the strings between hyphens in comments that matters, since that's what charUntil collects
  455. # [17:14] * Joins: dglazkov (n=dglazkov@nat/google/x-5ece7316ae5f6c43)
  456. # [17:23] * Joins: hallvors (n=hallvord@cm-84.208.78.204.getinternet.no)
  457. # [17:29] * Quits: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com)
  458. # [17:39] <yecril71> I think user agents that do not expect HTML as their primary medium should not be bound by the HTML specification at all.
  459. # [17:39] * Joins: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com)
  460. # [17:40] <yecril71> Like when the content type is something other than text/html.
  461. # [17:41] <yecril71> My legal theory is that section 3.3.2 applies only to a transfor served as text/html to a user agent expecting HTML.
  462. # [17:41] <yecril71> XSLT processors are unaffected.
  463. # [17:42] <yecril71> Why anyone should do this remains a mystery to me.
  464. # [17:43] <yecril71> Another possibility is when elements from XHTML namespace are embedded in XML documents that are styled with CSS.
  465. # [17:44] <yecril71> In that case, behaviour may be taken from the XHTML definition.
  466. # [17:44] <yecril71> That would be true particularly for form controls and scripts, because XML does not allow scripts.
  467. # [17:45] <yecril71> (or rather, does not provide for scripts or any kind of interactivity explicitly.)
  468. # [17:46] <yecril71> But even then, XSLT has a tendency of scattering the constituents of the output page across templates,
  469. # [17:47] <yecril71> so the page as viewed from XSLT would be rather useless.
  470. # [17:48] <yecril71> Stylesheet is a legacy word to describe a transformation.
  471. # [17:48] <yecril71> It is really not appropriate any more.
  472. # [17:49] <yecril71> That does not mean that "transformation sheet" is good.
  473. # [17:50] <yecril71> It is a transformation, certainly not a sheet.
  474. # [17:55] * Quits: hallvors (n=hallvord@cm-84.208.78.204.getinternet.no) (Read error: 110 (Connection timed out))
  475. # [17:57] * Quits: billmason (n=bmason@ip55.unival.com) ("Leaving.")
  476. # [17:57] <Hixie> jgraham: how should i phrase it then?
  477. # [17:58] * fishd|away is now known as fishd
  478. # [17:59] <Philip`> Hmm, turns out that tagNameState is the only thing that gets any practical benefit from not using charsUntil
  479. # [18:00] * Joins: hallvors (n=hallvord@cm-84.208.78.204.getinternet.no)
  480. # [18:04] * Joins: billmason (n=bmason@ip55.unival.com)
  481. # [18:08] <jgraham> Hixie: I would probably circumvent the problem by using a different example e.g. solving the roots of a quadratic using the quadratic formula
  482. # [18:08] * Quits: pesla (n=retep@procurios.xs4all.nl) ("( www.nnscript.com :: NoNameScript 4.21 :: www.esnation.com )")
  483. # [18:08] * Philip` gives up for now, before he introduces more pointless bugs into html5lib
  484. # [18:09] <jcranmer> ironic that I was just talking about square roots in another channel
  485. # [18:09] * Joins: Hish_ (n=chatzill@mail2.n-e-s.de)
  486. # [18:09] <jgraham> Otherwise I would say "using Pythagoras' theroem to solve for the hypotenuse <var>a</var> of a triangle of sides <var>b</var> and <var>c</var>"
  487. # [18:10] * Quits: zcorpan (n=zcorpan@c83-252-193-84.bredband.comhem.se)
  488. # [18:11] * Quits: Hish (n=chatzill@mail2.n-e-s.de) (Read error: 104 (Connection reset by peer))
  489. # [18:11] * Hish_ is now known as Hish
  490. # [18:11] <Philip`> Wouldn't the quadratic formula take millions of lines of MathML and be impossible to read?
  491. # [18:11] <Hixie> jgraham: that works, i'll use that
  492. # [18:11] <Hixie> Philip`: yes
  493. # [18:12] <Philip`> At least it's possible for a human to read the Pythagoras one
  494. # [18:12] <gsnedders> Philip`: How many lines depends on how much whitespace you put in it :)
  495. # [18:13] * Philip` wonders if text in examples like "flavours of ice cream" should be translated to en-US
  496. # [18:13] <jgraham> gsnedders: However the first law of MathML is that the total amount of markup needed to express a given concept is greater than the total amount of markup it was possible to use to express that concept
  497. # [18:14] <gsnedders> jgraham: :)
  498. # [18:14] <jgraham> s/it was/anyone thought it was/
  499. # [18:14] * Joins: Maurice (n=copyman@5ED548D4.cable.ziggo.nl)
  500. # [18:14] <Philip`> Anyway the example is clearly misleading, because you should expect 2<sup><var>n</var></sup> flavours of ice cream since they can choose whether or not to include each piped-in ingredient
  501. # [18:14] <jgraham> (the first law of ontent MathML is roughly similar but with the words "much much greater")
  502. # [18:24] <yecril71> You cannot solve roots and you cannot solve a hypotenuse.
  503. # [18:24] <yecril71> You can only solve problems, including special kinds of equations.
  504. # [18:25] <yecril71> You calculate roots and the length of the hypotenuse.
  505. # [18:25] <jgraham> Er yeah, I meant to say "solve /for/ the roots"
  506. # [18:25] * Philip` appears to be parsing the spec in 12.6s now
  507. # [18:26] <yecril71> solve what?
  508. # [18:26] * Joins: svl (n=me@ip565744a7.direct-adsl.nl)
  509. # [18:26] <jgraham> for the roots :)
  510. # [18:26] <jgraham> Or, if you like, the quadratic
  511. # [18:27] <yecril71> Solve what for the roots?
  512. # [18:27] <jgraham> The quadtratic, whatever it happens to be
  513. # [18:27] <jgraham> *quadratic
  514. # [18:27] <yecril71> Quadratic equation?
  515. # [18:28] <jgraham> yes. An equation can be solved. A root is a particular point on the solution.
  516. # [18:28] <jgraham> Hence "solving for the roots is both common and makes sense :)"
  517. # [18:28] <yecril71> A root is a particular member OF the solution.
  518. # [18:28] <yecril71> The solution is a set of numbers, and calling them points is an exaggeration.
  519. # [18:29] <yecril71> "solving for the roots" misses the object.
  520. # [18:29] <Philip`> It seems equally valid to see the solution as a (discontinuous) line
  521. # [18:30] <yecril71> That is redundant information.
  522. # [18:30] <yecril71> {(x1, 0), (x2, 0)} is much better handled as {x1, x2}
  523. # [18:31] <jgraham> Well the roots are a special case you could equally say solve y=f(x) for y=5 or whatever
  524. # [18:31] <jgraham> s/case/case;/
  525. # [18:32] <Philip`> yecril71: There's no reason for a line to exist in a two-dimensional space
  526. # [18:32] <Philip`> s/exist/only exist/
  527. # [18:34] <yecril71> f(x)=5 are not roots. f(x)-5 are roots, but it is a different equation.
  528. # [18:37] <jgraham> Hixie: The algorithm for setting document.domain should probably mention the fact that setting document.domain to a tld (or maybe a domain on the public suffix list?) is a security error
  529. # [18:37] * jgraham should probably send email
  530. # [18:37] <Hixie> yeah i'll be adding that. send mail. :-)
  531. # [18:39] * Quits: Dashiva (i=Dashiva@wikia/Dashiva)
  532. # [18:40] * Joins: Dashiva (i=Dashiva@wikia/Dashiva)
  533. # [18:45] <Philip`> Hixie: s/theroem/theorem/
  534. # [18:59] * Joins: aboodman2 (n=aboodman@dsl081-073-212.sfo1.dsl.speakeasy.net)
  535. # [19:03] * Quits: billmason (n=bmason@ip55.unival.com) ("Leaving.")
  536. # [19:11] * Joins: annevk (n=annevk@217.174.106.250)
  537. # [19:14] * Joins: aaronlev (n=chatzill@f051196203.adsl.alicedsl.de)
  538. # [19:18] * Joins: maikmerten (n=maikmert@L8054.l.pppool.de)
  539. # [19:34] <yecril71> What does it mean that HTML is not written by hand? I am confused.
  540. # [19:34] <yecril71> My idea of writing HTML "not by hand" is to use XSLT or document.write.
  541. # [19:34] <yecril71> But the sources for these are again written by hand.
  542. # [19:40] <jcranmer> yecril71: WYSIWYG?
  543. # [19:43] <Philip`> It means whatever the person using that phrase wishes it to mean, which is usually not quite the same as what anyone else thinks it means
  544. # [19:49] <gsnedders> Lachy: replaceHeadings is now in the normal Anolis repo
  545. # [19:51] * Quits: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com) (Read error: 131 (Connection reset by peer))
  546. # [19:51] * Joins: pauld (n=pauld@host217-43-109-48.range217-43.btcentralplus.com)
  547. # [19:58] <yecril71> WYSIWYG is deplorable in case of HTML.
  548. # [19:59] <yecril71> WYSINWTRG.
  549. # [20:03] <yecril71> And the documents thus produced usually have the MOTL.
  550. # [20:04] * Joins: nessy (n=nessy@124-171-30-131.dyn.iinet.net.au)
  551. # [20:14] * Joins: heycam (n=cam@203-217-82-242.dyn.iinet.net.au)
  552. # [20:21] * Joins: erlehmann (n=erlehman@86.59.25.121)
  553. # [20:37] <gsnedders> Hixie: should aside not be a sectioning root?
  554. # [20:40] * Quits: karlcow (n=karl@modemcable057.209-70-69.mc.videotron.ca) ("This computer has gone to sleep")
  555. # [20:40] <Hixie> gsnedders: ?
  556. # [20:41] <gsnedders> Hixie: surely having headers in aside elements show up in outlines doesn't make sense?
  557. # [20:42] <Hixie> why not?
  558. # [20:42] <Hixie> "surely" isn't a good argument :-)
  559. # [20:42] <gsnedders> "surely".
  560. # [20:42] <gsnedders> :)
  561. # [20:42] <gsnedders> If you look at the sidebars on most blogs, those should be an aside, right?
  562. # [20:43] <gsnedders> Surely headers in them don't make sense in an outline?
  563. # [20:47] <gsnedders> oh woops.
  564. # [20:47] <gsnedders> I just got pimpmyspec into an infinite loop :)
  565. # [20:47] <gsnedders> jgraham: Update the copy of Anolis!
  566. # [20:49] * Philip` makes html5lib do a lot more memory copying every time you call unget(), which results in 2% faster parsing
  567. # [20:53] * Joins: karlcow (n=karl@modemcable168.84-81-70.mc.videotron.ca)
  568. # [20:59] * Quits: roc (n=roc@121-72-167-250.dsl.telstraclear.net)
  569. # [21:18] <Lachy> gsnedders, cool.
  570. # [21:25] * aroben is now known as aroben|away
  571. # [21:33] * Joins: hdh1 (n=hdh@58.187.17.156)
  572. # [21:33] * Quits: hdh (n=hdh@118.71.123.136) (Nick collision from services.)
  573. # [21:33] * hdh1 is now known as hdh
  574. # [21:36] * Joins: doublec (n=chris@202.0.36.64)
  575. # [21:42] * Joins: roc (n=roc@202.0.36.64)
  576. # [22:01] * Parts: aaronlev (n=chatzill@f051196203.adsl.alicedsl.de)
  577. # [22:02] * Waldo|awol is now known as jwalden
  578. # [22:06] * Quits: mstange (n=markus@aixd3.rhrk.uni-kl.de) ("ChatZilla 0.9.84 [Firefox 3.2a1pre/20081216020422]")
  579. # [22:08] * Quits: dolske (n=dolske@firefox/developer/dolske) (Read error: 110 (Connection timed out))
  580. # [22:09] * Quits: ROBOd (n=robod@89.122.216.38) ("http://www.robodesign.ro")
  581. # [22:15] * Quits: maikmerten (n=maikmert@L8054.l.pppool.de) (Client Quit)
  582. # [22:20] * Joins: kingryan (n=ryan@adsl-99-50-23-198.dsl.pltn13.sbcglobal.net)
  583. # [22:23] * Joins: virtuelv (n=virtuelv@74.80-202-66.nextgentel.com)
  584. # [22:32] * Joins: dolske (n=dolske@guest-225.mountainview.mozilla.com)
  585. # [22:37] * Quits: kingryan (n=ryan@adsl-99-50-23-198.dsl.pltn13.sbcglobal.net)
  586. # [22:37] * Joins: kingryan (n=ryan@adsl-99-50-23-198.dsl.pltn13.sbcglobal.net)
  587. # [22:37] * Quits: ap (n=ap@195.239.126.12)
  588. # [22:41] * Quits: heycam (n=cam@203-217-82-242.dyn.iinet.net.au) ("bye")
  589. # [22:43] * Quits: aboodman2 (n=aboodman@dsl081-073-212.sfo1.dsl.speakeasy.net) (Read error: 60 (Operation timed out))
  590. # [22:47] * Quits: jwalden (n=waldo@guest-225.mountainview.mozilla.com) ("update, thanks for making me reboot, Apple")
  591. # [23:07] * Joins: jwalden (n=waldo@guest-225.mountainview.mozilla.com)
  592. # [23:10] * Joins: weinig_ (n=weinig@nat/apple/x-42971f1246b21db0)
  593. # [23:21] * Joins: jwalden_ (n=waldo@corp-241.mountainview.mozilla.com)
  594. # [23:21] * Quits: jwalden (n=waldo@guest-225.mountainview.mozilla.com) (Nick collision from services.)
  595. # [23:21] * jwalden_ is now known as jwalden
  596. # [23:22] * Quits: eric_carlson (n=ericc@nat/apple/x-e826ac79a7085607)
  597. # [23:24] * Quits: virtuelv (n=virtuelv@74.80-202-66.nextgentel.com) ("Leaving")
  598. # [23:26] * Quits: Maurice (n=copyman@5ED548D4.cable.ziggo.nl) ("Disconnected...")
  599. # [23:27] * Parts: kangax (n=kangax@74.201.136.194)
  600. # [23:37] * fakeolliej is now known as olliej
  601. # [23:47] * Joins: heycam (n=cam@clm-laptop.infotech.monash.edu.au)
  602. # [23:47] <Philip`> I love how OpenOffice.org Calc makes it impossible for me to change a cell value from "foo" to "Foo", if there are other cells in the same column that also say "foo"
  603. # [23:51] * Quits: weinig_ (n=weinig@nat/apple/x-42971f1246b21db0) (Remote closed the connection)
  604. # [23:52] * Joins: weinig_ (n=weinig@17.203.15.158)
  605. # [23:59] <Philip`> http://news.bbc.co.uk/1/hi/technology/7787335.stm - using Adobe AIR to provide cross-platform DRMed video
  606. # Session Close: Fri Dec 19 00:00:00 2008

The end :)