<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Rock, Paper, Software &#187; Rants</title>
	<atom:link href="http://software.tulentsev.com/category/rants/feed/" rel="self" type="application/rss+xml" />
	<link>http://software.tulentsev.com</link>
	<description>Random thoughts about programming</description>
	<lastBuildDate>Fri, 03 Feb 2012 13:47:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Case sensitivity and tools</title>
		<link>http://software.tulentsev.com/2008/12/case-sensitivity-and-tools/</link>
		<comments>http://software.tulentsev.com/2008/12/case-sensitivity-and-tools/#comments</comments>
		<pubDate>Fri, 19 Dec 2008 13:37:48 +0000</pubDate>
		<dc:creator>Sergei Tulentsev</dc:creator>
				<category><![CDATA[Rants]]></category>

		<guid isPermaLink="false">http://software.tulentsev.com/2008/12/case-sensitivity-and-tools/</guid>
		<description><![CDATA[I want to say again that decision to make identifiers case-insensitive is one of the worst design decisions a language author can make. Along with that goes &#8220;declare on first usage&#8221; decision, but more on this later. Why is it bad? Because you either have to have proper development tools that support this decision, or [...]]]></description>
			<content:encoded><![CDATA[<p>I want to say again that decision to make identifiers case-insensitive is one of the worst design decisions a language author can make. Along with that goes &#8220;declare on first usage&#8221; decision, but more on this later.</p>
<p>Why is it bad? Because you either have to have proper development tools that support this decision, or assume high professionalism of the developers, letting them use conventional tools. Good professional developer will be consistent with casing of identifiers, because he sticks to some naming convention and case means something there (this is wild assumption, but I believe it is true, hehe).<span id="more-61"></span></p>
<p>Recently I had to fix some ancient program. It is written in Turbo Pascal 5. The IDE is even more useless than even Windows Notepad (can you imagine this?), that&#8217;s why I used <a href="http://notepad-plus.sourceforge.net/uk/about.php" target="_blank">Notepad++</a> to edit sources and launch compilation script.</p>
<p>In some recent versions it acquired so-called &#8220;smart highting&#8221;. This feature highlights all occurrences of a word when you select one of them. Very handy. BUT! it is case sensitive.</p>
<p><a href="http://software.tulentsev.com/wp-content/uploads/2008/12/image3.png"><img src="http://software.tulentsev.com/wp-content/uploads/2008/12/image-thumb3.png" border="0" alt="image" width="565" height="328" /></a></p>
<p>Take a look at the screenshot. You can see two occurrences of <em>valor</em> highlighted with green color, but another occurrence is not highlighted, it has different casing. This makes analysis of this source code somewhat harder.</p>
<p>Well, we could blame two sides here: lack of &#8220;case sensitivity&#8221; options for Notepad++ and this design decision of Niklaus Wirth. I tend to do the latter :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://software.tulentsev.com/2008/12/case-sensitivity-and-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

