Options:
- # Session Start: Tue Jul 31 00:00:00 2007
- # Session Ident: #html-wg
- # [00:01] * Quits: myakura (myakura@122.29.114.29) (Quit: Leaving...)
- # [00:05] * Parts: hasather (hasather@80.203.71.22)
- # [01:10] * Joins: olivier (ot@128.30.52.30)
- # [01:17] * Quits: heycam (cam@203.214.7.142) (Ping timeout)
- # [01:19] * Joins: sbuluf (whz@200.49.140.238)
- # [01:45] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [01:50] * Joins: gavin (gavin@74.103.208.221)
- # [01:59] * Joins: heycam (cam@130.194.72.84)
- # [02:05] * Quits: kingryan (rking3@208.66.64.47) (Quit: kingryan)
- # [02:11] * Quits: Sander (svl@86.87.68.167) (Quit: And back he spurred like a madman, shrieking a curse to the sky.)
- # [02:53] * Joins: MikeSmith (MikeSmith@mcclure.w3.org)
- # [03:12] * Joins: Zeros (Zeros-Elip@67.154.87.254)
- # [03:12] <tH> pity hypervocal isn't in the dictionary, otherwise "hypervocal dissenters" is a googlewhack
- # [03:15] * Quits: tH (Rob@87.102.32.80) (Quit: ChatZilla 0.9.78.1-rdmsoft [XULRunner 1.8.0.9/2006120508])
- # [03:26] <MikeSmith> the word "outspoken" is in the dictionary, though
- # [03:28] * Joins: karl (karlcow@128.30.52.30)
- # [03:32] <MikeSmith> and along with the word "outspoken", the dictionary also has "strident" and "shrill"
- # [03:34] <MikeSmith> interesting, perhaps looking at things from the other side, you'll also find the words "tactless", "obnoxious", "immature", and "imprudent"
- # [03:36] <MikeSmith> In this game, how you say something is nearly as important as what you say.
- # [03:37] <MikeSmith> You don't win just by being right. Or especially be being right and rubbing it in everybody's faces.
- # [03:39] <MikeSmith> You win by, well, winning people over if you can. Or at least by not alienating them.
- # [03:39] * karl wonders why whatwg archives are not accessible for the last few days.
- # [03:40] * karl wonders if it's a server config thingy or regeneration of the archives
- # [03:40] <MikeSmith> karl - known issue
- # [03:41] <MikeSmith> Hixie on vacation I guess, so not likely it will get fixed til he's back
- # [03:41] <MikeSmith> I think he's the only one with admin access to the whatwg.org server
- # [03:41] <karl> ah ok. Thanks.
- # [03:42] <karl> I should do regular copy of the mailboxes of whatwg, as I was doing in the past to keep local archives on my computer
- # [03:43] <karl> http://krijnhoetmer.nl/irc-logs/html-wg/20070729#l-75
- # [03:44] <karl> hmm trying to soften this.
- # [03:44] <karl> I think specification are first for implementers. There are different kind of implementers. Authoring tools, library developers, etc. are implementers.
- # [03:44] <karl> s/specification/specifications/
- # [03:45] <karl> and another thing which soften the assertion of anne
- # [03:45] <karl> it is very hard to advocate for readable markup and hand authoring of markup, if at the same time, you advocate that the spec is not for authors.
- # [03:46] <karl> Often some people say "Tools will not save you" (which I can understand to a certain stretch) but if you advocate this then you have to consider authors at the core.
- # [03:46] <MikeSmith> I wonder if it might be that you maybe can't have it both ways in one spec. A particular spec either needs to be written for an audience of implementors or for an audience of authors.
- # [03:47] <MikeSmith> The current HTML5 spec tries to do both.
- # [03:47] <karl> Class of Products. Even in user agents, there are different classes.
- # [03:47] <karl> but yes agreed
- # [03:48] <karl> if we choose the way of two specifications, one for author and one for products consuming HTML
- # [03:48] <MikeSmith> I think we might be better off with a spec that quits pretending to consider authors as an audience, and just focuses on implementors.
- # [03:48] <karl> then it means that people working on HTML 5 (for user agents) have to accept that people want stricter syntax for authoring for example ;)
- # [03:49] <karl> which is not yet accepted by some people
- # [03:50] <Zeros> I think middle ground is possible
- # [03:50] <Zeros> Something derived from the spec (like anne's changes since html4 doc) could bridge the gap.
- # [03:50] <MikeSmith> I'm personally not convinced that the HTML5 spec itself should even try to define which existing/legacy markup conformant, and which is not.
- # [03:51] <Zeros> Java is for authors, but the Java Language Specification is probably not something that's very friendly to someone learning it. Separate code samples, tutorials and reference documents fill that role.
- # [03:52] <karl> yes Zeros, I agree. I think there would be benefit if authors (people from the WG) could federate producing a specification for authoring, with details semantics, plenty of examples, etc.
- # [03:52] <karl> that would be cool.
- # [03:52] <MikeSmith> Zeros - true
- # [03:52] <MikeSmith> At least I think it is not productive for the spec to try to say at this point which existing elements are no non-conformant, but perhaps table that whole discussion for later.
- # [03:53] <karl> MikeSmith: it is a different issue.
- # [03:53] <karl> browser have to read it, it doesn't mean authors have to write it. :) and that could be handled in a separate spec.
- # [03:54] <karl> Specifications are often the formalized requirements of a market.
- # [03:54] <karl> if the authors market wants a stricter way to write HTML, then be it.
- # [03:54] <Philip`> MikeSmith: If it doesn't say what is non-conformant, how could anyone write a conformance checker?
- # [03:54] <Philip`> (Would that be left to a separate "best practices" document or something?)
- # [03:55] <MikeSmith> The problem with the conformance discussions so far is that they have just been divisive.
- # [03:55] <Philip`> Which ones in particular? (Things like td@headers aren't just about conformance, since HTML5 doesn't currently define anything about how they should be processed either)
- # [03:55] <karl> MikeSmith: because people forget that Conformance is not a unique thing
- # [03:56] <karl> http://www.w3.org/TR/spec-variability/
- # [03:56] <MikeSmith> Philip` - You can write a conformance checker based on all existing/legacy elements being conformant under the same conditions they are conformant under HTML4, or under the specification for those elements in HTML5 (if they are specified there).
- # [03:56] <karl> Specifically http://www.w3.org/TR/spec-variability/#spec-cat-cop
- # [03:56] <karl> 3. Classes of products and specification category
- # [03:57] <MikeSmith> So the HTML5 conformance checker would no longer report the table@summary as a conformance error.
- # [03:57] <karl> "From this categorization of specifications, a Working Group can identify the class of products that are affected by the specification. Classes of products can be generalized as either producers or consumers, or as content itself."
- # [03:57] <MikeSmith> For example
- # [03:57] <karl> The following is a list of the most common classes of products for W3C specifications:
- # [03:57] <karl> * Content (of type, meaning, and format as defined in the specification)
- # [03:57] <karl> * Producer of content (may be divided into initiators and modifiers)
- # [03:57] <karl> * Player (read-only consumer, conveys content in non- XML way)
- # [03:57] <karl> * Consumer in a one-way pipeline
- # [03:57] <karl> * Responding agent (e.g., server) of API (consumer and producer)
- # [03:57] <karl> * Processor (consumer of its vocabulary/instructions)
- # [03:57] <karl> * Module that hosts the processor
- # [03:57] <karl> * Producer of instructions/commands to processor
- # [03:57] <karl> * Profile derived from the specification's Rules for Profiles
- # [03:57] <karl> * Specification (guidelines)
- # [03:58] * Quits: Lionheart (robin@66.57.69.65) (Ping timeout)
- # [03:58] <karl> and http://www.w3.org/TR/qaframe-spec/#what-conform
- # [03:58] <karl> 2.2.2 What needs to conform?
- # [03:59] <karl> Identify who and/or what will implement the specification.
- # [03:59] <karl> What does it mean? Clearly identify the class of products (i.e., type of products or services) upon which the requirements are imposed. If multiple classes of products are targeted by the specification, make sure each is described. Examples of classes of products include: content, producer of content, player, protocol, API, agent, and guidelines.
- # [03:59] <Zeros> It definitely needs to be more than just best practices, I think there's a need for a simplified and flattened spec. Removal of references to RFCs with simplified explanations, parsing rules stripped out. Something that's approachable for the HS student learning the language.
- # [04:00] <Philip`> MikeSmith: It doesn't sound particularly logical to me if an HTML5 conformance checker says table@summary is fine to use in an HTML5 document, when a perfectly compliant HTML5 UA would not understand table@summary at all
- # [04:01] <karl> an HTML 5 conformance checker is /not/ for browsers.
- # [04:01] <karl> :) it would be pointless
- # [04:02] <MikeSmith> Philip` - by what definition of "perfectly compliant HTML5 UA"?
- # [04:04] <Philip`> A UA which was written by a perfect programmer with infinite time sitting down with a copy of the perfect HTML5 specification, which does exactly what HTML5 says it must do
- # [04:04] * Quits: MikeSmith (MikeSmith@mcclure.w3.org) (Client exited)
- # [04:04] * Joins: MikeSmith (MikeSmith@mcclure.w3.org)
- # [04:04] <Philip`> (...and which wouldn't understand table@summary at all because nobody said it existed (under the assumption that HTML5 doesn't define table@summary, since I think that was the relevant assumption))
- # [04:04] <Zeros> there's a big difference between bugs in the browser implementation and intentional differences in design though
- # [04:06] <Philip`> If HTML5 conformance checkers allow people to use e.g. table@summary, it should be because HTML5 UAs can process it interoperably, which means it has to be defined in the HTML5 spec
- # [04:06] <karl> :)))
- # [04:06] <karl> eating or being eaten.
- # [04:06] <MikeSmith> Philip` - That does not seem to me to be necessarily so. It is certainly not stated explicitly in the current spec.
- # [04:07] <Zeros> sounds more like a chicken and egg thing when you put it that way.
- # [04:07] <karl> HTML 5 for authors is certainly a subset of HTML 5 for browsers.
- # [04:07] <karl> it is not about writing rules which are different.
- # [04:07] <MikeSmith> I do not think it's necessarily true that the spec can't define markup that a certain class of UAs don't use.
- # [04:08] <Zeros> it already does
- # [04:08] <karl> but about writing rules which are handled by the browsers but gives an interoperability between authors.
- # [04:09] <MikeSmith> Specifically, the fact that desktop browsers don't happen to do anything with the summary attribute does not mean the spec must specifically define it as not conformant.
- # [04:09] <MikeSmith> It can define it a valid
- # [04:09] <MikeSmith> without attempting to detail any further conformance behavior around it
- # [04:09] <karl> MikeSmith: it's not only about /desktop/ browsers but products consuming HTML.
- # [04:10] * karl wonders why people have so much difficulties to understand the notion of Class of products
- # [04:10] <Philip`> MikeSmith: Oh, I agree with that - I think it's fine to define and allow table@summary when some classes of UAs don't use it; the problem is just if some classes of UAs *do* use it, and authors are encouraged to use it (by it not being marked as non-conformant), but the spec doesn't define it (hence it being more likely to be non-interoperable)
- # [04:12] <MikeSmith> Philip` - I'm in full agreement with you there.
- # [04:12] <Philip`> In the latter case, I assume the solution would be for HTML5 to define it
- # [04:13] <Zeros> There's also the issue of who uses something that's only useful to a subset of the content consumers.
- # [04:13] <Philip`> and then "You can write a conformance checker based on all existing/legacy elements being conformant under the same conditions they are conformant under HTML4, or under the specification for those elements in HTML5 (if they are specified there)" doesn't seem to make sense since everything conformant would be specified in HTML5
- # [04:13] <Philip`> (Hmm, I'm not sure if I'm actually making sense to myself)
- # [04:14] <MikeSmith> Philip` - no, I understand what the point you're making.
- # [04:15] <karl> oooooh I see peace, peace, peace and agreement. :) Happy days. yooohoo :)
- # [04:16] <MikeSmith> Anyway, my original argument was just that it might be much more productive for the group to focus on defining interoperable behavior for elements that do already have some associated behavior in desktop UAs.
- # [04:16] <MikeSmith> And leave discussions about non-conformance of legacy elements for later.
- # [04:16] <MikeSmith> If we want to get more progress made.
- # [04:17] <Philip`> Okay, that sounds sensible to me :-)
- # [04:17] <Zeros> I agree
- # [04:18] <karl> MikeSmith: I would go a bit further. I would say that people who are authors should form a task force and create the document now. It will help newcomers and people reading about HTML 5 to have an easier access to what's going on.
- # [04:18] <karl> There are a lot more people out there who are interested by HTML 5 Syntax, than HTML 5 for browsers.
- # [04:19] <karl> and when they hit the WG, they don't understand, what's going on.
- # [04:19] <karl> So it means we spend a lot of times advocating things, educating instead of progressing on HTML 5 for browsers and HTML 5 for authors.
- # [04:28] <MikeSmith> karl - Yeah. I agree completely.
- # [04:29] <MikeSmith> Write the spec, then it's a moot point.
- # [04:29] <MikeSmith> Talking about it in abstract is fruitless.
- # [04:51] * Quits: MikeSmith (MikeSmith@mcclure.w3.org) (Quit: Less talk, more pimp walk.)
- # [05:00] <karl> http://rdmsoft.com/r/blog/439
- # [05:01] <karl> "I did implement most of the HTML5 tokeniser algorithm in PHP, but that didn't really feel like work as the spec is refreshingly easy to follow. I used it to make some pointless stats, and am currently procrastinating implementing anything else."
- # [05:01] <karl> --> pointless stats http://bugs.rdmsoft.com/html/stats/2007-07-18/ :)
- # [05:10] <Zeros> 0);" 689, heh.
- # [05:14] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [05:19] * Joins: gavin (gavin@74.103.208.221)
- # [05:21] * Quits: Zeros (Zeros-Elip@67.154.87.254) (Quit: Leaving)
- # [06:17] * Joins: MikeSmith (MikeSmith@mcclure.w3.org)
- # [06:55] <hsivonen> jgraham: in the last telecon DanC talked about test case licensing and how not taking care of it had slowed down another WG.
- # [06:55] * Quits: mjs (mjs@17.255.96.105) (Connection reset by peer)
- # [06:56] <hsivonen> jgraham: it remains to be seen whether MIT/expat is good enough for the W3C or whether the W3C wants to do its own legal thing
- # [07:01] * Joins: mjs (mjs@17.255.96.105)
- # [07:07] * Quits: MikeSmith (MikeSmith@mcclure.w3.org) (Quit: Less talk, more pimp walk.)
- # [07:22] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [07:27] * Joins: gavin (gavin@74.103.208.221)
- # [07:39] <karl> hsivonen: http://www.w3.org/2004/10/27-testcases.html
- # [07:40] <karl> Policies for Contribution of Test Cases to W3C
- # [07:40] <karl> and http://www.w3.org/QA/WG/2005/01/test-faq#legal
- # [07:41] <karl> 10. Do I really have to worry about all that legal stuff?
- # [07:41] <karl> in the Test Development FAQ
- # [07:41] <karl> http://www.w3.org/TR/qa-handbook/#IANAL
- # [07:41] <karl> 4. Licensing & branding
- # [08:01] * Quits: heycam (cam@130.194.72.84) (Quit: bye)
- # [08:27] * Quits: mjs (mjs@17.255.96.105) (Quit: mjs)
- # [08:29] * Joins: MikeSmith (MikeSmith@mcclure.w3.org)
- # [08:35] * Quits: Lachy (chatzilla@203.214.140.60) (Quit: ChatZilla 0.9.78.1 [Firefox 2.0.0.4/2007051502])
- # [08:36] <karl> http://bashblogger.grimthing.com/archives/2007/07/27/bashblogger-036_release/
- # [08:36] <karl> "The templates are what determines what kind of (x)html skeleton your site will have and will determine how your site validates. By default, the new version of bashblogger will ship with HTML5 templates."
- # [08:38] <karl> hmmm I wonder how many documents and software will be released as tentatively "HTML 5"
- # [09:13] * Joins: ROBOd (robod@86.34.246.154)
- # [09:24] * Quits: olivier (ot@128.30.52.30) (Quit: Leaving)
- # [09:29] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [09:29] * Quits: karl (karlcow@128.30.52.30) (Quit: Where dwelt Ymir, or wherein did he find sustenance?)
- # [09:34] * Joins: gavin (gavin@74.103.208.221)
- # [09:40] * Joins: mjs (mjs@64.81.48.145)
- # [09:59] * Joins: heycam (cam@203.214.7.142)
- # [10:12] * Quits: Dashiva (noone@80.202.223.17) (Ping timeout)
- # [10:12] * Joins: Dashiva (noone@80.202.223.17)
- # [11:17] * Quits: mjs (mjs@64.81.48.145) (Ping timeout)
- # [11:36] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [11:41] * Joins: gavin (gavin@74.103.208.221)
- # [12:05] * Quits: MikeSmith (MikeSmith@mcclure.w3.org) (Quit: Less talk, more pimp walk.)
- # [12:14] * Joins: Sander (svl@86.87.68.167)
- # [12:27] * Quits: sbuluf (whz@200.49.140.238) (Ping timeout)
- # [12:42] * Joins: zcorpan (zcorpan@84.216.42.147)
- # [13:02] * Joins: MikeSmith (MikeSmith@mcclure.w3.org)
- # [13:16] * Joins: Lionheart (robin@66.57.69.65)
- # [13:31] * Joins: tH_ (Rob@87.102.32.80)
- # [13:31] * tH_ is now known as tH
- # [13:37] * Quits: MikeSmith (MikeSmith@mcclure.w3.org) (Ping timeout)
- # [13:43] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [13:48] * Joins: gavin (gavin@74.103.208.221)
- # [13:55] * Joins: MikeSmith (MikeSmith@mcclure.w3.org)
- # [14:10] * Quits: heycam (cam@203.214.7.142) (Ping timeout)
- # [14:26] * Joins: billyjack (MikeSmith@mcclure.w3.org)
- # [14:28] * Quits: MikeSmith (MikeSmith@mcclure.w3.org) (Ping timeout)
- # [14:40] * Joins: MikeSmith (MikeSmith@mcclure.w3.org)
- # [14:43] * Quits: billyjack (MikeSmith@mcclure.w3.org) (Ping timeout)
- # [14:44] * Joins: heycam (cam@203.214.100.97)
- # [14:45] * Quits: heycam (cam@203.214.100.97) (Connection reset by peer)
- # [14:45] * Joins: heycam (cam@203.214.100.97)
- # [14:59] * Quits: zcorpan (zcorpan@84.216.42.147) (Ping timeout)
- # [15:04] * Quits: MikeSmith (MikeSmith@mcclure.w3.org) (Quit: Less talk, more pimp walk.)
- # [15:31] <Philip`> I wish I could write a simple dozen-line example program without finding new browser bugs each time
- # [15:31] <hsivonen> Philip`: in JS?
- # [15:31] <Philip`> Yes
- # [15:32] <Philip`> (WebKit seemingly doesn't like non-integer CSS like hsl(120.0, 100%, 50%))
- # [15:34] <Philip`> (Are there any CSS3 Color tests anywhere? I've just been adding random ones to my <canvas> tests instead...)
- # [15:48] * Joins: Lachy (chatzilla@203.214.140.60)
- # [15:53] * Joins: polin8 (polin8@64.81.134.176)
- # [15:54] * Quits: polin8 (polin8@64.81.134.176) (Quit: :wq)
- # [16:09] * Joins: myakura (myakura@122.29.114.29)
- # [16:11] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [16:17] * Joins: gavin (gavin@74.103.208.221)
- # [16:27] <DanC> Karl, about legal stuff and testing... I think the html5lib folks did worry about legal stuff, a bit; they picked an MIT/expat license. Do you know any particular reason why that's not good enough?
- # [16:27] <DanC> I just know that WGs are expected to use http://www.w3.org/2004/10/27-testcases.html , and that I'll have to ask around internally about whether we can do something different.
- # [16:28] <DanC> so it makes my life simpler if the html5lib developers go with http://www.w3.org/2004/10/27-testcases.html , though simplifying my life is hardly the #1 priority
- # [16:28] <anne> fwiw, there's also some html5 (not html5lib) stuff under Apache 2.0
- # [16:31] <anne> DanC, what are the implications of that?
- # [16:31] <anne> DanC, in theory MIT should allow W3C to just fork the whole thing and claim it to be their own
- # [16:31] <anne> the whole reason I wanted MIT was so that everyone could just do whatever they wanted...
- # [16:31] <DanC> huh? that's not my understanding of the MIT license
- # [16:32] <DanC> it doesn't allow other parties to claim copyright
- # [16:32] <hsivonen> anne: just about the only thing the MIT license doesn't allow is removing the copyright notice
- # [16:32] <DanC> (well, anybody can claim anything...)
- # [16:32] <anne> hsivonen, oh
- # [16:33] <DanC> the http://www.w3.org/2004/10/27-testcases.html is mostly about grants, i.e. grant of copyright
- # [16:33] <DanC> or at least grant of some license; I try not to know the details.
- # [16:33] <anne> it's not entirely clear to me why that's better than what we have now
- # [16:33] <DanC> it's better for me, as I say.
- # [16:33] <hsivonen> fwiw, my reading of the W3C test case grant is that it isn't an Open Source license, so html5lib would need to still use the MIT license for other licensees to be Open Source
- # [16:34] <DanC> not open source? hmm... that might make some sense... W3C doesn't license derivative works on specs, and I guess we treat test cases more like specs than like code
- # [16:35] * DanC can imagine people might have strong views on this.
- # [16:35] <hsivonen> DanC: the test case grant is specific grant to the W3C instead of a grant to anyone. further,the W3C doc license says "No right to create modifications or derivatives of W3C documents is granted pursuant to this license."
- # [16:36] <anne> I just want to know the implications; I assume it would be ok though given there's nothing strange in the doc...
- # [16:37] <hsivonen> if there are test cases to which I am the sole copyright holder, I'd be OK with granting W3C a non-exclusive license, but I still want to make stuff available as Open Source
- # [16:37] <DanC> that dooms me to non-trivial negotiations with W3C legal. :-/
- # [16:38] <DanC> I guess that's why they pay me the big bucks. (not)
- # [16:38] <hsivonen> DanC: the W3C grant says "non-exclusive"
- # [16:38] <DanC> hsivonen, I'm struggling to find the text you quoted; help me out?
- # [16:38] <DanC> what link did you follow from http://www.w3.org/2004/10/27-testcases.html ?
- # [16:38] <hsivonen> DanC: http://www.w3.org/2002/09/wbs/1/testgrants-200409/?login for "non-exclusive" and http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231 for "No right to create modifications or derivatives of W3C documents"
- # [16:39] <DanC> ah. thanks.
- # [16:39] <DanC> so test cases go under the W3C document license, which is definitely not open source
- # [16:40] <DanC> but it's a non-exclusive grant. So maybe this isn't so hard after all.
- # [16:40] <DanC> (i.e. it's not a copyright transfer)
- # [16:40] <DanC> hmm... "The Contributor further agrees that any derivative works of this contribution prepared by the W3C shall be solely owned by the W3C."
- # [16:40] <DanC> messy
- # [16:41] <hsivonen> (personally, I am very liberal with granting non-exclusive licenses and very cautious about exclusive licenses and assignments)
- # [16:41] <anne> ok, so non-exclusive means that we now and then dump a set of tests to the W3C or something?
- # [16:41] <DanC> it's consistent with that way of working...
- # [16:41] <anne> (granting a non-exclusive license for all changes, additions, etc.)
- # [16:42] <DanC> ... but I'd rather that WG members also had write access to the test materials.
- # [16:42] <anne> it seems that if they modify the W3C editions we can't fold them back into html5lib, the Java parser, the ocaml project, etc. which seems bad
- # [16:42] <hsivonen> anne: right
- # [16:43] <DanC> right; so maybe we could ask HTML WG members to dual license their contributions.
- # [16:43] <DanC> well, more than ask; we could make a WG decision that all test materials are so licensed.
- # [16:43] * Joins: billmason (billmason@69.30.57.156)
- # [16:43] <DanC> but again, I'd have to check with W3C legal before I could be party to that agreement.
- # [16:48] <hsivonen> Philip`: hmm. seems to me that a SVG back end for most of canvas could be created in pure JS in browsers that support SVG
- # [16:49] <DanC> in theory, anyway. (a) are there any browsers that do SVG and not canvas? and (b) the performance issues seem significant.
- # [16:49] <anne> we're thinking of supporting drawImage(SVGSVGElement, ...)
- # [16:51] <hsivonen> DanC: not Web-ready browsers as far as I know. and yes, the perf issue would be significant
- # [16:51] <hsivonen> (but the perf issue tends get ignored when people argue that canvas is redundant with SVG...)
- # [16:52] <hsivonen> but if a script creates an SVG DOM fragment for reuse, using the canvas API seems more convenient than using the DOM API to create SVG
- # [16:53] <DanC> the "use cases for <canvas>" thread is interesting... the group seems to be coming to agreement on how use cases work. I only wish I could see clear requirements coming out as a by-product.
- # [16:56] <DanC> catching up on more of the thread... it seems to make clear how big the design space around canvas is. I have been hoping/waiting for that.
- # [16:57] <anne> "design space"?
- # [16:57] <DanC> e.g. "Proper 3D really needs a performance-oriented hardware-accelerated API"
- # [16:58] <anne> 3D APIs have been in the air since XTech 2006... however, that's about it :(
- # [16:58] <DanC> from a marketing level, <canvas> is partly about competing with flash and silverlight. I tremble at the thought of making the HTML WG scope that big, but I'm sorta compelled to accept it, to some extent.
- # [16:59] <anne> good :)
- # [17:00] <hsivonen> DanC: I think it is crucial to be able to do the kind of things Flash and Silverlight offer to do with the core browser features
- # [17:01] <DanC> yeah; and I think it's critical to have a reasonably complete test suite for HTML. and I only want to spend 2 years doing it.
- # [17:01] <DanC> square peg, meet round hole. ;-)
- # [17:02] * anne was about the mumble something about the current pace
- # [17:03] <Philip`> hsivonen: Oh, that does seem quite possible - I guess it'd actually be the same as how excanvas generates VML for IE
- # [17:03] <DanC> if you put very strongly rose-colored glasses on, the current pace is reasonably good. lots of detailed spec comments have come in in the last month or so, including discussion of detailed test cases.
- # [17:03] <Philip`> (though excanvas appears to generate VML via string concatentation - I don't know if DOM manipulation would be a better way)
- # [17:04] <DanC> if you take the rose-colored glasses off, you realize that we have made 0 (count 'em: zero) design decisions about the language.
- # [17:04] <hsivonen> DanC: it seems to me that the pool of people competent and willing to write test cases is distincly small
- # [17:04] <DanC> that's natural.
- # [17:04] <DanC> it's natural that the WG has a few folks who focus on test case development, a few more who review the tests, and lots who never even peek at them.
- # [17:05] <DanC> I would have thought that other tasks would proceed similarly, but, for example, the pool of people willing to develop tutorials hasn't emerged or hasn't gotten started.
- # [17:06] <Philip`> I would hope 3D <canvas> wouldn't be an especially big problem to work on - it'd just be a wrapper for OpenGL ES, so the OpenGL people have already done all the hard work
- # [17:07] <anne> the problem is that OpenGL is not everywhere
- # [17:08] * DanC tries to remember whether OpenGL is in ABM state; consults wikipedia...
- # [17:08] <hsivonen> anne: what's a platform that doesn't support OpenGL?
- # [17:08] <DanC> or EBM
- # [17:08] <hsivonen> anne: Wii?
- # [17:08] <Philip`> (EBM?)
- # [17:09] <anne> hsivonen, I can't classify it better than some devices I'm afraid
- # [17:09] <DanC> everybody but microsoft. indeed: "OpenGL was developed by Silicon Graphics Inc. (SGI) in 1992[1] and is popular in the video game industry where it competes with Direct3D on Microsoft Windows platforms" -- http://en.wikipedia.org/wiki/OpenGL
- # [17:09] <anne> "some devices"
- # [17:09] <hsivonen> anne: ok
- # [17:09] <DanC> ABM is "anybody but ..."
- # [17:10] <Philip`> Ah, okay
- # [17:11] * Quits: tH (Rob@87.102.32.80) (Ping timeout)
- # [17:12] <Philip`> If I remember correctly, Vista implements OpenGL 1.4 on top of DirectX, so it's still always available and hardware-accelerated
- # [17:12] <Philip`> and nobody would have to write their own OpenGLES-to-DirectX wrapper for Windows
- # [17:13] <Philip`> so it's hopefully not that infeasible :-)
- # [17:13] <DanC> hmm... the OpenGL-on-windows story is indeed subtle...
- # [17:20] * Joins: tH (Rob@87.102.32.80)
- # [17:26] * Quits: myakura (myakura@122.29.114.29) (Quit: Leaving...)
- # [17:41] * Joins: gsnedders (gsnedders@81.132.175.22)
- # [17:41] * Quits: gsnedders (gsnedders@81.132.175.22) (Quit: Don't touch /dev/null…)
- # [17:41] * Joins: gsnedders (gsnedders@81.132.175.22)
- # [17:52] * Joins: kazuhito (kazuhito@222.151.144.131)
- # [18:04] * Quits: kazuhito (kazuhito@222.151.144.131) (Quit: Quitting!)
- # [18:05] * Joins: dbaron (dbaron@71.198.189.81)
- # [18:19] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [18:24] * Joins: gavin (gavin@74.103.208.221)
- # [18:58] <anne> http://www.w3.org/html/ needs an update...
- # [18:58] <anne> (the sidebar links)
- # [18:59] * Joins: hasather (hasather@80.203.71.22)
- # [19:06] <Philip`> rgb(0.0, 255.0, 0.0) - IE and Opera accept that, Firefox and Safari don't
- # [19:06] * Philip` continues to be surprised at how something seemingly simple like colours isn't implemented interoperably
- # [19:07] * Quits: jmb (jmb@81.86.70.47) (Ping timeout)
- # [19:08] * Quits: dbaron (dbaron@71.198.189.81) (Quit: 8403864 bytes have been tenured, next gc will be global.)
- # [19:09] * Joins: jmb (jmb@81.86.70.47)
- # [19:10] <anne> I think we fixed that though
- # [19:10] <anne> "fixed"
- # [19:11] <anne> There's also the issue of rgb(0, 0%, 0)
- # [19:38] <anne> Ouch, OpenGL will get API changes: http://en.wikipedia.org/wiki/OpenGL
- # [19:38] <anne> This will be problematic if we are to base our stuff on it...
- # [19:43] <Philip`> It stays backward-compatible - applications written and compiled for OpenGL 1.1 still work if you just implement OpenGL 2.1
- # [19:45] <Philip`> though the Mozilla work has been mostly based on OpenGL ES instead, which isn't backward-compatible with normal OpenGL because it has all the complicated less-useful bits stripped out
- # [19:47] <Philip`> and it looks like OpenGL ES 2.0 isn't backward-compatible with OpenGL ES 1.x, since it strips out some more bits
- # [19:47] <anne> that would be http://www.khronos.org/opengles/
- # [19:47] <anne> fun
- # [19:47] <anne> that doesn't seem useful for the web at all
- # [19:49] <Philip`> It doesn't seem much of a problem if <canvas> just provides an OpenGL ES 1.1 context and an OpenGL ES 2.0 one
- # [19:49] <Philip`> (Oops, got to go...)
- # [19:50] <anne> I suppose that would make the most sense but it will anyhow mean bloated browsers
- # [20:07] * Joins: mjs (mjs@64.81.48.145)
- # [20:07] * Joins: Zeros (Zeros-Elip@67.154.87.254)
- # [20:08] <Philip`> For desktop browsers, they would presumably use the OS's OpenGL support, and OpenGL ES is always [nearly] a subset of OpenGL - if there was OpenGL 2.0, then you could implement GLES 1.1 and 2.0 as (relatively) simple wrappers around it (and probably with most of the code being shared between them)
- # [20:09] * Joins: dbaron (dbaron@63.245.220.241)
- # [20:10] <Philip`> If there isn't OpenGL 2.0, like if the user has an old graphics card (I think GeForce 4 is the limit?) or didn't have decent drivers (e.g. were using Vista's DirectX wrapper), then GLES 2.0 is impossible
- # [20:11] <Philip`> I'm not sure what version of OpenGL would be necessary to support a mostly-complete subset of GLES 1.1
- # [20:12] <Philip`> but I'd expect that ought to be widely usable, depending on how subsetted it is
- # [20:13] <Philip`> It's probably a pain on embedded devices if they only support GLES 2.0 and not 1.1, since you'd have to emulate various bits of 1.1 functionality - I have no idea if such devices exist
- # [20:15] <Philip`> (All these issues seem unavoidable if the aim is hardware-accelerated 3D, since hardware varies so much - inventing a different API wouldn't solve anything and would be lots more work than just basing it on OpenGL ES, as far as I can imagine)
- # [20:22] <Zeros> Is this for 3d support in browsers?
- # [20:25] <Philip`> Yes
- # [20:26] <Philip`> I'm not yet certain whether it's a good idea, but it would be fun to play with :-)
- # [20:26] <mjs> there would once again be the immediate mode vs. retained mode debate
- # [20:26] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [20:28] <Philip`> You can implement X3D on top of OpenGL but you can't implement OpenGL on top of X3D, so it seems much more useful to provide the immediate-mode API and let people build retained-mode on top of it, so you end up with the advantages of both
- # [20:30] <Philip`> (Maybe I'm just biased because I like writing low-level OpenGL and have never been happy with pre-built graphics engines :-) )
- # [20:31] <mjs> OpenGL is pretty low-level compared to existing web technologies
- # [20:31] <mjs> but it does work pretty well for what it does
- # [20:31] * Joins: gavin (gavin@74.103.208.221)
- # [20:32] <Philip`> It seems a similar level to the 2d canvas context
- # [20:39] <Philip`> I suppose the currently-specced client-side SQL database and network connections have the same feature/problem of being unusually low-level - they're trying to make web applications more like non-web applications by simply providing the same fundamental libraries that non-web applications frequently use
- # [20:40] <mjs> I think the network connection stuff is unsuitable for web use
- # [20:40] <Zeros> I think simple object persistence would have made more sense than a sql database.
- # [20:41] <Zeros> There's no locking mechanism in JS though, so that'd be interesting to make work effectively.
- # [20:41] <mjs> its security model is pretty weak
- # [20:42] <mjs> and it can't be used to talk to any existing protocol
- # [20:42] <Zeros> How can it be both secure and talk to existing protocols?
- # [20:42] <Philip`> Zeros: Would that be something more advanced than globalStorage?
- # [20:43] <Zeros> There's no way to enforce domain access restrictions on jabber
- # [20:44] <mjs> object persistence is complicated
- # [20:46] <Zeros> Philip`, Maybe some relationship capability? How does that work if two windows are modifying it simultaneously?
- # [20:47] <Philip`> I'm not sure how bad the security concerns would be with OpenGL in a browser - it's very easy to make GL crash when you're writing C and giving it invalid pointers, and it doesn't seem trivial to make a browser ensure that never happens
- # [20:49] <Zeros> I think my biggest issue with SQL (aside from being useless and dangerous for novice developers) is that there's so many dialects of it, and the spec doesn't say which one should be supported.
- # [20:49] <Zeros> Are fields going to be quoted with [] "" or `' and in which browsers?
- # [20:50] <Philip`> Zeros: Which kind of "simultaneously"? Scripts are already required to run as if single-threaded, so there's no need for locking shared data if you're just accessing it in a single script block, though it would be a problem if you do setTimeouts and expect things to not change
- # [20:50] <Philip`> s/kind/granularity/ (maybe)
- # [20:51] * Quits: mjs (mjs@64.81.48.145) (Quit: mjs)
- # [20:51] * Joins: mjs (mjs@64.81.48.145)
- # [20:51] <Zeros> Philip`, single threaded if they're in two separate windows of the same domain?
- # [20:52] <Zeros> If the xmlhttprequest returns in window 2 while the user clicks a button in window 1, that doesn't create a race condition to get to the shared data?
- # [20:52] <Philip`> http://www.whatwg.org/specs/web-apps/current-work/#threads - it depends on whether the windows are 'directly reachable', it seems
- # [20:54] <Philip`> I don't know if that definition could be modified so that any browsing contexts which have access to some shared data (globalStorage, SQL storage, etc) are considered reachable
- # [20:54] <Zeros> It doesn't look like two windows of the same domain that were opened separate are required to be single threaded
- # [20:54] <Zeros> They're not related contexts
- # [20:55] <Zeros> Maybe a way to lock(timeout : int) and unlock() the shared data contexts?
- # [20:55] <Philip`> Sounds like it's currently a problem for at least global storage, if two windows could theoretically access it concurrently
- # [20:55] <Philip`> (I assume it's only theoretical because everyone implements browsers with a single thread, but maybe that's wrong?)
- # [20:56] <Zeros> My understanding is that JSCore is single threaded, but I think that's only true for each browsing context, not the entire engine. mjs?
- # [20:57] <mjs> Zeros: it's possible to run the engine on multiple threads, but I'm not really sure what the question is
- # [20:57] <Zeros> Philip`, one window being processed doesn't stall the rendering of the entire browser for every other window though, especially true for JS being parsed in the document body.
- # [20:58] <mjs> all web stuff in Safari runs on one thread
- # [20:58] <mjs> in theory we could partition things into threads if some windows are guaranteed unreachable to each other, but that is hard to prove
- # [20:59] <Philip`> About the SQL syntax, I understood the situation to be that some browsers would implement it with SQLite and then people would start using it on the web and then all other browsers would have to do something sufficiently compatible with SQLite (i.e. actually using SQLite) and then the specification would be updated to be precise about it
- # [20:59] <mjs> SQL storage doesn't have race condition problems because the SQL query itself is atomic
- # [20:59] <Zeros> mjs, so no two script blocks or pages ever execute at the same time?
- # [20:59] <mjs> so you make a SQL expression that does what you want at one go
- # [21:00] <mjs> Zeros: not in Safari
- # [21:00] <mjs> I can't say for sure in other browsers
- # [21:00] <Zeros> okay, thanks
- # [21:00] <mjs> if that were possible, it could make it hard to use globalStorage safely
- # [21:00] <mjs> read-modify-write cycles couldn't be atomic
- # [21:00] <mjs> I still think globalStorage should be defined in terms of the SQL storage
- # [21:01] <mjs> as previously suggested by me
- # [21:01] <mjs> then you can get the slightly more convenient for simple things API
- # [21:01] <mjs> but still do fancier things
- # [21:04] <Zeros> that might be nice
- # [21:06] <Zeros> I think the e4x system for queries would make more sense to new developer. persistence.posts[@userid=21 and @title="foo"].comments[@userid=1]
- # [21:06] <Zeros> We don't need /all/ of e4x, but that general idea is much more natural to the language than building sql queries
- # [21:07] <Philip`> Is there any existing work on doing efficient indexed lookups for E4X queries?
- # [21:08] * Quits: laplink (link@193.157.66.214) (Ping timeout)
- # [21:08] * Quits: xover (xover@193.157.66.5) (Ping timeout)
- # [21:08] <Zeros> Not specifically that I've seen, might be able to convince Adobe to share how Flash 9 implements it.
- # [21:08] <Philip`> Or maybe performance doesn't really matter, since it's not like you're going to store hundreds of megabytes of database on the hard disk of a visitor to your site
- # [21:09] <Zeros> hah, I hope not.
- # [21:09] <mjs> Zeros: the nice thing about SQL is the fact that many web developers already know it
- # [21:10] <Zeros> mjs, Agreed, but doing anything complicated when you need to concat strings together to build the sql statement gets nasty, and encourages injection attacks.
- # [21:10] <Philip`> Many web developers know MySQL in particular, which might make the browser's SQL storage even more confusing since it has subtly different syntax and breaks when they don't expect it to
- # [21:11] * Parts: hasather (hasather@80.203.71.22)
- # [21:11] * Joins: hasather (hasather@80.203.71.22)
- # [21:11] <Philip`> (like when they try to use the string concatenation operator)
- # [21:12] <Zeros> " where userid = " + userId + " instead of "where userid = ?", but forcing the users[@userid= userid] removes the safety concerns.
- # [21:13] <Philip`> (Oh, it seems MySQL doesn't actually have a string concatenation operator, it just uses concat())
- # [21:13] <Zeros> safety being relative, I mean it's on the client already I guess.
- # [21:15] <mjs> Zeros: executeSql does have a way to insert parameters w/o risk of sql injection, but I agree, there is a risk if you use raw string concatenation
- # [21:15] * Joins: laplink (link@193.157.66.214)
- # [21:15] * Joins: xover (xover@193.157.66.5)
- # [21:16] <Zeros> Philip`, would there be an issue with transforming the e4x syntax into a sql query with bind parameters at parse time?
- # [21:17] <Philip`> Most (all?) languages have trivial ways to avoid SQL injection, but given the frequency of SQL injection attacks it seems that people don't use those ways
- # [21:18] <Philip`> Zeros: How would you know at parse time whether the E4X syntax is being used for normal E4X or for the converted-into-SQL database-storage E4X?
- # [21:19] <Zeros> hmm
- # [21:19] <Zeros> The other advantage of e4x would be allowing arbitrary method calls on persisted objets.
- # [21:20] <Zeros> [user.name.substring(1,3).toUpperCase() = ...] instead of forcing special sql functions
- # [21:21] <Philip`> That would seem to make it impossible to convert into an SQL query
- # [21:21] <Zeros> without a lot of complexity, yeah\
- # [21:22] <Philip`> If it's not making use of SQL at all, I suppose you could just store an XML string in globalStorage and use normal E4X to access and update that (though I guess you'd have to manually save after you've made any changes)
- # [21:23] <Zeros> I wonder what the performance hit to unserialize and iterate the objects would be
- # [21:23] <Zeros> wait, does the SQL database allow storing arbitrary JS objects?
- # [21:25] <Zeros> I guess not if you have to build sql string, that reduces the usefulness of the e4x method structure greatly.
- # [21:26] * Quits: laplink (link@193.157.66.214) (Ping timeout)
- # [21:26] * Quits: xover (xover@193.157.66.5) (Ping timeout)
- # [21:26] <Zeros> I wonder how bad the performance hit would be to select the rows generally, iterate invoking the JS methods and return a result set.
- # [21:29] <Philip`> http://canvex.lazyilluminati.com/3dmodel/example0.html loads a 280KB XML file using E4X, and it's not exceedingly slow, but most of its time is just spent splitting strings on whitespace
- # [21:31] <Philip`> Hmm, the spec doesn't seem to actually say what types you can store in the database
- # [21:32] <Philip`> I would be surprised if anyone implemented it as doing anything other than converting everything to strings
- # [21:33] * Joins: xover (xover@193.157.66.5)
- # [21:33] * Joins: laplink (link@193.157.66.214)
- # [21:37] <Philip`> ((As it happens, that example0 benefits greatly from the OpenGL canvas extension that used to work in Firefox - it's quite rubbish with the 2d-canvas emulation))
- # [21:39] <Philip`> ((The 3d model is from Google Earth, and I suppose Google Earth is one example of how 3d on the web would be good, if it could be as convenient to use as Google Maps))
- # [21:44] <Zeros> How bad is the performance hit for OpenGL on Vista?
- # [21:46] <Philip`> I would expect it's negligible, compared to the orders-of-magnitude performance differences that you get from different hardware
- # [21:47] <Zeros> hmm
- # [21:47] <Philip`> http://www.opengl.org/pipeline/article/vol003_9/ seems like useless information since it doesn't say what kind of drivers were used
- # [21:48] <Zeros> OpenGL canvas 3d would be interesting, there'd need to be agreement on model formats and other loadable data (textures,etc.).
- # [21:49] <Philip`> (There's about three kinds, I think - proper Vista OpenGL drivers (which at least NVIDIA and ATI do), old XP OpenGL drivers (which disable Vista's Aero interface), and the built-in OpenGL-on-DirectX wrapper. I don't know what the performance of the last option is like)
- # [21:50] <Zeros> Philip`, tried with Flash 9/Flex? Someone had a X-Wing game with it that was pretty slick.
- # [21:50] <Philip`> OpenGL doesn't have any concept of models - you just give it a list of vertex coordinates
- # [21:50] <Zeros> oh, so with proper drivers you can get real OpenGL access on vista and skip the emulation?
- # [21:50] <Philip`> I think the experimental Mozilla implementation allows you to create textures from any image element or 2D canvas
- # [21:51] <Zeros> I was under the impression that it was OpenGL on DirectX for everything.
- # [21:52] <Zeros> I suppose I'll have to do more research about the OpenGL API, I don't know much about it. :)
- # [21:54] <Philip`> Microsoft's original plans for OpenGL on Vista were to make it rubbish and useless, but those plans changed before they released it, so it's alright now :-)
- # [21:55] <Zeros> ah :)
- # [21:57] <Philip`> Aha, http://blogs.msdn.com/kamvedbrat/archive/2006/02/22/537624.aspx describes the three OpenGL paths
- # [22:03] <Zeros> thanks
- # [22:10] <Philip`> About Flash, I've seen http://papervision3d.org/ and a couple of examples based on that engine - I don't remember having encountered anything else similar
- # [22:13] <Philip`> http://www.rockonflash.com/demos/pv3d/starwarsflightsim/index.html - is that the X-Wing one?
- # [22:13] <Philip`> (Looks like that's using PaperVision3D too)
- # [22:14] <Zeros> yeah
- # [22:14] <Zeros> The papervision3d.org site doesn't seem to be loading properly in Safari.
- # [22:14] <Zeros> I see the logo in the middle of the screen and nothing seems to happen
- # [22:14] <Zeros> oh, it's just real slow to load
- # [22:15] <Zeros> I'm not sure if that's the right VM either, I'm getting:
- # [22:15] <Zeros> TypeError: Error #1034: Type Coercion failed: cannot convert flash.display::AVM1Movie@88fd3c1 to flash.display.Bitmap.
- # [22:17] <Philip`> It looks like that's all done with no hardware acceleration, but it's surprisingly fast - I might guess wildly that Flash perhaps provides a perspective-textured polygon drawing function, and they're building the 3D engine on top of that, since that's the only way I can imagine it working at all but still being fairly unique to PV3D
- # [22:18] <Zeros> http://www.unitzeroone.com/blog/flash_examples/flash_9_pv_3d_example_3d_bumpm.html
- # [22:20] <Philip`> Oh, looks like I'm wrong
- # [22:20] * Quits: laplink (link@193.157.66.214) (Ping timeout)
- # [22:20] * Quits: xover (xover@193.157.66.5) (Ping timeout)
- # [22:21] <Zeros> Philip`, It does hardware accelerate the drawing in some modes, but I'm not entirely sure how that works. http://labs.adobe.com/technologies/flashplayer9/releasenotes.html mentions full screen mode enables it.
- # [22:23] * Parts: hasather (hasather@80.203.71.22)
- # [22:23] <Zeros> There was talk about implementing Flash 9 for linux with OpenGL and I think I remember someone saying that creating a new OGL context for swf would be prohibitively expensive.
- # [22:23] * Joins: hasather (hasather@80.203.71.22)
- # [22:23] <Philip`> http://www.papervision3d.org/demos/LinearMapping/ - that seems to just do linear (non-perspective) mapping of textures onto triangles, and you need to add enough triangles for it to look good
- # [22:25] * Quits: Lachy (chatzilla@203.214.140.60) (Quit: ChatZilla 0.9.78.1 [Firefox 2.0.0.4/2007051502])
- # [22:26] <Zeros> It looks like the rhino was AS2, so that's the old VM in terms of performance.
- # [22:27] <Zeros> http://www.papervision3d.org/demos/panorama/ it's a cube.
- # [22:27] <Zeros> (click and hold for the triangles)
- # [22:28] <Philip`> If the Flash plugin created a GL context for every advert on every page you have loaded, I can imagine that would be a problem - it would seem more reasonable if they could do it just for the few games/demos that really want accelerated 3D, but then maybe everybody would set the 'I really want accelerated 3D' flag on their Flash adverts...
- # [22:28] * Joins: laplink (link@193.157.66.214)
- # [22:29] * Joins: xover (xover@193.157.66.5)
- # [22:30] * Philip` wonders what canvas performance is like if you're just drawing textured triangles...
- # [22:30] <Zeros> http://www.noventaynueve.com/2007/ is interesting, but there's no collision detection. Do any of the papervision demos have that?
- # [22:30] <Philip`> (I tried doing textured floors once, but they're the worst case for perspective effects)
- # [22:34] * Quits: gavin (gavin@74.103.208.221) (Ping timeout)
- # [22:39] * Joins: gavin (gavin@74.103.208.221)
- # [22:40] * Philip` forces himself not to try implementing it, since he has too many other things to do :-(
- # [22:41] <Zeros> someday :)
- # [22:45] * Quits: ROBOd (robod@86.34.246.154) (Quit: http://www.robodesign.ro )
- # [22:49] <Philip`> Of course, having said that, I just remembered that I do actually have a primitive 3D renderer I wrote a while ago in a different language which might be easy to port to JS+canvas...
- # [23:06] * Quits: Hixie (ianh@129.241.93.37) (Quit: clearing IRC client buffers...)
- # [23:06] * Joins: Hixie (ianh@129.241.93.37)
- # [23:07] * Quits: tH (Rob@87.102.32.80) (Ping timeout)
- # [23:12] * Joins: edas (edaspet@88.191.34.123)
- # [23:16] * Quits: mjs (mjs@64.81.48.145) (Quit: mjs)
- # [23:28] * Quits: edas (edaspet@88.191.34.123) (Ping timeout)
- # [23:31] * Joins: edas (edaspet@88.191.34.123)
- # [23:44] * Sander groans and gives up on trying to understand document.write(), on account of it having broken his brain.
- # [23:49] <Philip`> What kind of problems are you having with it? :-)
- # [23:53] <Sander> Just... grasping how it works for my HTML5 review. I can read and reread a line like "Otherwise, the tokeniser must process the characters that were inserted, one at a time, processing resulting tokens as they are emitted, and stopping when the tokeniser reaches the insertion point or when the processing of the tokeniser is aborted by the tree construction stage (this can happen if a script ...
- # [23:53] <Sander> ...start tag token is emitted by the tokeniser)." a dozen times, but actually wrapping my head around what that means (as in, envisioning consequences for various inputs) is beyond me.
- # [23:54] <Sander> Possibly I should be trying again some time when it isn't midnight. :)
- # [23:59] <Philip`> Hmm, that sounds like slightly undefined behaviour in cases where the tokeniser does some lookahead
- # [23:59] * Philip` tries to think of a test case
- # Session Close: Wed Aug 01 00:00:00 2007
The end :)