<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Parsing directives</title>
	<atom:link href="http://blog.excastle.com/2007/09/20/parsing-directives/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.excastle.com/2007/09/20/parsing-directives/</link>
	<description>Life, .NET, and Cats</description>
	<lastBuildDate>Tue, 31 Aug 2010 13:47:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: crystalbit</title>
		<link>http://blog.excastle.com/2007/09/20/parsing-directives/comment-page-1/#comment-83025</link>
		<dc:creator>crystalbit</dc:creator>
		<pubDate>Wed, 16 Dec 2009 19:22:45 +0000</pubDate>
		<guid isPermaLink="false">http://blog.excastle.com/2007/09/20/parsing-directives/#comment-83025</guid>
		<description>two years left, but it is still actual :) I did not even thought about such things with directives in delphi, I&#039;m so happy to have found this post</description>
		<content:encoded><![CDATA[<p>two years left, but it is still actual <img src='http://blog.excastle.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  I did not even thought about such things with directives in delphi, I&#8217;m so happy to have found this post</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Fermando Madruga</title>
		<link>http://blog.excastle.com/2007/09/20/parsing-directives/comment-page-1/#comment-5712</link>
		<dc:creator>Fermando Madruga</dc:creator>
		<pubDate>Mon, 24 Sep 2007 07:13:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.excastle.com/2007/09/20/parsing-directives/#comment-5712</guid>
		<description>Nice idea, nice work and nice findings!&lt;br&gt;&lt;br&gt;Imagine if Codegear/Borland had to follow someone else&#039;s standards instead of setting the rules! :)
</description>
		<content:encoded><![CDATA[<p>Nice idea, nice work and nice findings!</p>
<p>Imagine if Codegear/Borland had to follow someone else&#8217;s standards instead of setting the rules! <img src='http://blog.excastle.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Craig Stuntz</title>
		<link>http://blog.excastle.com/2007/09/20/parsing-directives/comment-page-1/#comment-5711</link>
		<dc:creator>Craig Stuntz</dc:creator>
		<pubDate>Fri, 21 Sep 2007 13:33:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.excastle.com/2007/09/20/parsing-directives/#comment-5711</guid>
		<description>Then there&#039;s the directive default, which, IIRC, has a different meaning with and without the semicolon. With the semicolon it indicates the default indexer; without it&#039;s followed by the default value of the property.&lt;br&gt;&lt;br&gt;One of the C++ TeamB guys once asked me why directives were preceded by the line separator. I didn&#039;t know, so I directed him to Danny Thorpe, who was standing nearby. I don&#039;t recall Danny&#039;s precise answer, but I think it amounted to, &quot;There&#039;s not really a good reason for it; it&#039;s just the way it is.&quot;&lt;br&gt;&lt;br&gt;Allen, I don&#039;t understand &quot;in-keeping with the notion that the semi-colon was a terminator not a separator.&quot; In Pascal the semicolon is a (line/argument) separator, not a (line/argument) terminator. Moreover, semicolons have always appeared midline, as with separating multiple function arguments.
</description>
		<content:encoded><![CDATA[<p>Then there&#8217;s the directive default, which, IIRC, has a different meaning with and without the semicolon. With the semicolon it indicates the default indexer; without it&#8217;s followed by the default value of the property.</p>
<p>One of the C++ TeamB guys once asked me why directives were preceded by the line separator. I didn&#8217;t know, so I directed him to Danny Thorpe, who was standing nearby. I don&#8217;t recall Danny&#8217;s precise answer, but I think it amounted to, &quot;There&#8217;s not really a good reason for it; it&#8217;s just the way it is.&quot;</p>
<p>Allen, I don&#8217;t understand &quot;in-keeping with the notion that the semi-colon was a terminator not a separator.&quot; In Pascal the semicolon is a (line/argument) separator, not a (line/argument) terminator. Moreover, semicolons have always appeared midline, as with separating multiple function arguments.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Allen Bauer</title>
		<link>http://blog.excastle.com/2007/09/20/parsing-directives/comment-page-1/#comment-5710</link>
		<dc:creator>Allen Bauer</dc:creator>
		<pubDate>Thu, 20 Sep 2007 17:56:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.excastle.com/2007/09/20/parsing-directives/#comment-5710</guid>
		<description>There are several reasons for this apparent inconsistency.  Originally, all directives *could not* have a semicolon between them.  This was in-keeping with the notion that the semi-colon was a terminator not a separator.  However, in practice, this was less than intuitive to explain or remember.  So what this all means is that you cannot have a var block like this:&lt;br&gt;&lt;br&gt;var&lt;br&gt;  Foo: procedure;&lt;br&gt;  StdCall: Integer;&lt;br&gt;&lt;br&gt;Not likely to happen (who would name a variable StdCall?? However, syntactically it is possible).  Had we enforced the &quot;no semicolon&quot; rule, then you *could* have a construct like above.&lt;br&gt;&lt;br&gt;Remember, directives are *not* reserved words in the same sense as &quot;for&quot; &quot;case&quot; &quot;while.&quot;  They&#039;re only semi-reserved based on their context.  &quot;requires&quot; and &quot;contains&quot; are the same way.  They&#039;re only reserved in the context of a file with a leading &quot;package&quot; clause.&lt;br&gt;&lt;br&gt;The whole notion of directives syntax was discussed at length internally. We were trying to be as &quot;nice&quot; as possible by limiting the breakage of existing code while making the syntax more &quot;natural.&quot;&lt;br&gt;&lt;br&gt;Allen.&lt;br&gt;
</description>
		<content:encoded><![CDATA[<p>There are several reasons for this apparent inconsistency.  Originally, all directives *could not* have a semicolon between them.  This was in-keeping with the notion that the semi-colon was a terminator not a separator.  However, in practice, this was less than intuitive to explain or remember.  So what this all means is that you cannot have a var block like this:</p>
<p>var<br />
<br />  Foo: procedure;<br />
<br />  StdCall: Integer;</p>
<p>Not likely to happen (who would name a variable StdCall?? However, syntactically it is possible).  Had we enforced the &quot;no semicolon&quot; rule, then you *could* have a construct like above.</p>
<p>Remember, directives are *not* reserved words in the same sense as &quot;for&quot; &quot;case&quot; &quot;while.&quot;  They&#8217;re only semi-reserved based on their context.  &quot;requires&quot; and &quot;contains&quot; are the same way.  They&#8217;re only reserved in the context of a file with a leading &quot;package&quot; clause.</p>
<p>The whole notion of directives syntax was discussed at length internally. We were trying to be as &quot;nice&quot; as possible by limiting the breakage of existing code while making the syntax more &quot;natural.&quot;</p>
<p>Allen.<br /></p>
]]></content:encoded>
	</item>
</channel>
</rss>
