<HTML><BODY style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space; "><BR><DIV><DIV>On Oct 24, 2007, at 5:44 AM, Lou Iorio wrote:</DIV><BR class="Apple-interchange-newline"><BLOCKQUOTE type="cite">This is a use of the term "commented out" with which I am not familiar. :-)<DIV><BR class="khtml-block-placeholder"></DIV><DIV>After a little experimentation, I see that <?informalexample> and <?example> "pseudo" processing instructions</DIV><DIV>are both ignored, so removing them has no effect on the output html.</DIV></BLOCKQUOTE><DIV><BR class="khtml-block-placeholder"></DIV>That's what John and I were *trying* to say. </DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>[...snip...]</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV><BLOCKQUOTE type="cite"><DIV>can be replaced with this:</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><</SPAN></FONT><FONT class="Apple-style-span" color="#3F7F7F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">example </SPAN></FONT><FONT class="Apple-style-span" color="#7F007F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">role</SPAN></FONT><FONT class="Apple-style-span" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">=</SPAN></FONT><FONT class="Apple-style-span" color="#2A00FF" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">"live-example"</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"> </SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><</SPAN></FONT><FONT class="Apple-style-span" color="#3F7F7F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">title</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">></SPAN></FONT><FONT class="Apple-style-span" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">Logging to the debugger</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"></</SPAN></FONT><FONT class="Apple-style-span" color="#3F7F7F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">title</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"> </SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><</SPAN></FONT><FONT class="Apple-style-span" color="#3F7F7F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">programlisting </SPAN></FONT><FONT class="Apple-style-span" color="#7F007F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">language</SPAN></FONT><FONT class="Apple-style-span" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">=</SPAN></FONT><FONT class="Apple-style-span" color="#2A00FF" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">"lzx"</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"> </SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><</SPAN></FONT><FONT class="Apple-style-span" color="#3F7F7F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">textobject</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">><</SPAN></FONT><FONT class="Apple-style-span" color="#3F7F7F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">textdata </SPAN></FONT><FONT class="Apple-style-span" color="#7F007F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">fileref</SPAN></FONT><FONT class="Apple-style-span" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">=</SPAN></FONT><FONT class="Apple-style-span" color="#2A00FF" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">"programs/debugging-$4.lzx"</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">/></</SPAN></FONT><FONT class="Apple-style-span" color="#3F7F7F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">textobject</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">></SPAN></FONT><FONT class="Apple-style-span" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"> </SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"> </SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"></</SPAN></FONT><FONT class="Apple-style-span" color="#3F7F7F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">programlisting</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"></</SPAN></FONT><FONT class="Apple-style-span" color="#3F7F7F" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">example</SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">></SPAN></FONT></DIV></BLOCKQUOTE><DIV><BR class="khtml-block-placeholder"></DIV>Indeed! </DIV><DIV><BR><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><BR class="khtml-block-placeholder"></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">I propose we remove these processing instructions. If nothing else, surely it</SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">will speed up the build and reduce confusion. I know I was confused. As John</SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">says, let's discuss.</SPAN></FONT></DIV></BLOCKQUOTE><DIV><BR class="khtml-block-placeholder"></DIV>Yes! Do it! Whenever you touch a file, feel free to remove these "commented out" example code. </DIV><DIV><BR><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><BR class="khtml-block-placeholder"></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">As to making the parser ignore stuff in the xml document, how about plain old</SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">comments? It's easy to grep for these, and we could use something simple, like:</SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><BR class="khtml-block-placeholder"></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><!-- TODO: add example. IORIO 24 oct 2007 --></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><!-- IGNORE: no longer used </SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"> stuff to ignore</SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">IORIO 24 oct 2007 </SPAN></FONT><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">--></SPAN></FONT></DIV></BLOCKQUOTE><DIV><BR class="khtml-block-placeholder"></DIV>The tricky thing is making it ignore tags that contain comments:</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>If you've got</DIV><DIV><button>Nice</button> <!-- this button's label is "Nice" --></DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>...then you can't comment it out with </DIV><DIV><!-- IGNORE </DIV><DIV><button>Nice</button> <!-- this button's label is "Nice" --></DIV><DIV>bshine 24 oct 2007 --></DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>because the parser will try to close the comment after Nice"--> </DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>That's why we sometimes use <?ignore ?> to comment out</DIV><DIV>lzx code as we're developing it. </DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>I think the right answer here is... if you have to comment out something </DIV><DIV>that includes comments, either...</DIV><DIV>a) you're wrong, you don't really need to comment it out, you should just</DIV><DIV>delete it and let subversion be your backup...</DIV><DIV>b) comment it out with <!-- --> and remove any spurious close-comments within the comment. </DIV><DIV>c) wrap it in a <switch> <when runtime="never"></when> <otherwise> </otherwise></switch> (I'm actually not sure if this works, but it seems like a cool idea; the equivalent in C of doing </DIV><DIV>if (false) {</DIV><DIV>... } else {</DIV><DIV>...</DIV><DIV>}</DIV><DIV>which smart compilers deal with at compile time. (Our compiler *is* smart in this way.)</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV><BR><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><BR class="khtml-block-placeholder"></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><BR class="khtml-block-placeholder"></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;">Lou</SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><BR class="khtml-block-placeholder"></SPAN></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" color="#008080" face="Monaco" size="3"><SPAN class="Apple-style-span" style="font-size: 11px;"><BR class="khtml-block-placeholder"></SPAN></FONT></DIV><DIV><BR class="khtml-block-placeholder"><DIV><DIV>----------------------------------</DIV><DIV><BR><DIV><DIV>On Oct 24, 2007, at 12:48 AM, Benjamin Shine wrote:</DIV><BR class="Apple-interchange-newline"><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">I think John's right; these are escaped with the non-traditional "processing instruction of</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><?informalexample</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">...</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">?informalexample></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Style-wise, that's not such a good way to comment things out in xml. Our occasional hack of saying</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><?ignore <SPAN class="Apple-converted-space"> </SPAN><tags><we><regret> ?></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">is really a malapropism of the <? ?> syntax, which is used to indicate a processing instruction. We're effectively saying application, please process the stuff between these <? ?> tags by ignoring it. Kind of goofy.</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><A href="http://www.w3.org/TR/xml/#sec-pi">http://www.w3.org/TR/xml/#sec-pi</A></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">But, I don't have a better suggestion for making the parser ignore stuff inside an xml document. I suspect Tucker has an opinion!</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">On Oct 23, 2007, at 8:14 PM, Lou Iorio wrote:</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV> <BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Actually, the escaped examples are not commented out (see the example in</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">my original email, below); it looks like they're just ignored by the build.</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Lou</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">On Oct 23, 2007, at 10:51 PM, John Sundman wrote:</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV> <BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Under the old doctools regime, the example code was embedded in the doc files; in the new regime the examples are pulled out as separate lzx files.</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Being paranoid, when I converted files to the new syntax, I just commented out the examples rather than deleting them.<SPAN class="Apple-converted-space"> </SPAN>So, there are lots of places where examples still remain in the source, but are commented out and thus invisible.<SPAN class="Apple-converted-space"> </SPAN>It's dead text.</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">We should probably go ahead and delete the commented-out code now.<SPAN class="Apple-converted-space"> </SPAN>Let's discuss (but not tonight, it's late).</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">jrs</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">On Oct 23, 2007, at 12:40 PM, Lou Iorio wrote:</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV> <BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">What is the purpose of the escaped code in live examples?</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">In the debug chapter (example 50.2) we have this:</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><<example role="live-example"></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN><title>Runtime exceptions printed once per line</title></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN><programlisting language="lzx"></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN><textobject><textdata fileref="programs/debugging-$3.lzx"/></textobject></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN></programlisting></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "></example></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><?informalexample role="live-example"><programlisting role="lzx-embednew"><filename>debugging-$3.lzx</filename><parameter/><code></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">&lt;canvas debug="true" height="150"&gt;</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>&lt;handler name="oninit"&gt;&lt;![CDATA[</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>for (var i = 0; i &gt; 10; i ++) {</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>canvas.width();</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>}</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>]]&gt;&lt;/handler&gt;</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">&lt;/canvas&gt;</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "></code></programlisting><programlisting></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">&lt;canvas debug="true" height="150"&gt;</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>&lt;handler name="oninit"&gt;&lt;![CDATA[</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>for (var i = 0; i &gt; 10; i ++) {</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>canvas.width();</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>}</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN>]]&gt;&lt;/handler&gt;</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">&lt;/canvas&gt;</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "></programlisting><?lzx-edit programs/debugging-$3.lzx></informalexample?></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">As far as I can tell, this does exactly the same thing:</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><example role="live-example"></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN><title>Runtime exceptions printed once per line</title></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN><programlisting language="lzx"></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN><textobject><textdata fileref="programs/debugging-$3.lzx"/></textobject></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-converted-space"> </SPAN></programlisting></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "></example></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><?informalexample role="live-example"><programlisting role="lzx-embednew"><filename>debugging-$3.lzx</filename><parameter/><code></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "></programlisting><?lzx-edit programs/debugging-$3.lzx></informalexample?></DIV> </BLOCKQUOTE><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV> </BLOCKQUOTE><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV> </BLOCKQUOTE><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV> </BLOCKQUOTE></DIV><BR></DIV></DIV></DIV></BLOCKQUOTE></DIV><BR></BODY></HTML>