<?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>stacyprowell.com &#187; Computers</title>
	<atom:link href="http://stacyprowell.com/blog/tag/computers/feed/" rel="self" type="application/rss+xml" />
	<link>http://stacyprowell.com/blog</link>
	<description>Ugh, Stacy&#039;s talking again...</description>
	<lastBuildDate>Sat, 04 Feb 2012 06:01:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Good Idea / Bad Idea</title>
		<link>http://stacyprowell.com/blog/2009/08/21/good-idea-bad-idea/</link>
		<comments>http://stacyprowell.com/blog/2009/08/21/good-idea-bad-idea/#comments</comments>
		<pubDate>Fri, 21 Aug 2009 17:52:04 +0000</pubDate>
		<dc:creator>stacy</dc:creator>
				<category><![CDATA[Nuisances]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[language]]></category>
		<category><![CDATA[linkedin]]></category>

		<guid isPermaLink="false">http://stacyprowell.com/blog/?p=350</guid>
		<description><![CDATA[I spend my time (recently) writing a mishmash of Python, C++, and Java. It&#8217;s interesting to switch back and forth. What&#8217;s a good idea and what&#8217;s a bad (or dangerous) idea in computer language design? We&#8217;ve got a lot of candidates, and a lot of opinions. I&#8217;ll list a few here, along with a few [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_235" class="wp-caption alignright" style="width: 160px"><img class="size-full wp-image-235" title="programming" src="http://stacyprowell.com/blog/wp-content/uploads/2009/05/1ebeb1d2f212046a4e47fcd414dbad9b1-150x150.jpg" alt="Programming" width="150" height="150" /><p class="wp-caption-text">Programming</p></div>
<p>I spend my time (recently) writing a mishmash of Python, C++, and Java.  It&#8217;s interesting to switch back and forth.</p>
<p>What&#8217;s a good idea and what&#8217;s a bad (or dangerous) idea in computer language design?  We&#8217;ve got a lot of candidates, and a lot of opinions.</p>
<p>I&#8217;ll list a few here, along with a few places where they show up.<span id="more-350"></span> I&#8217;m not saying C macros are the same as, or even similar to, Lisp macros.  Just trying to clarify the spectrum.</p>
<p>I&#8217;ve heard someone, at some point, say each one of the items below is a good idea / bad idea.  Dangerous in the hands of a novice?  Yes, but then so is any computer with a network connection.</p>
<ul>
<li>Preprocessors (C, C++)</li>
<li>Macros (C, Lisp)</li>
<li>Multiple Inheritance (C++, Smalltalk)</li>
<li>Operator Overloading (C++, Python)</li>
<li>Closures (Lisp, Haskell)</li>
<li>Generics (Java, Ada)</li>
<li>Template Metaprogramming (C++)</li>
<li>Casts (C, C++)</li>
<li>Strong or Weak Typing (Scala, Lisp, Python, ML)</li>
<li>Fixed-Point Math (C# and COBOL)</li>
<li>Fixed Integer Types vs. &#8220;Numbers&#8221; (C, Lisp, Python)</li>
<li>Garbage Collection (Java, Lisp, ML)</li>
<li>Manual Allocation / Deallocation (C, C++)</li>
<li>Everything is an Object / Some Things are Primitives (Smalltalk, Java)</li>
<li>Auto-(Un)Boxing (Java, C#)</li>
<li>Indentation is Significant (Python)</li>
<li>First-Order Functions (ML, Lisp)</li>
<li>Lambdas (ML, Lisp, Python)</li>
<li>Type Erasure (Java)</li>
</ul>
<p>Did I leave out your favorite / most reviled language feature?  Complain below.  I included type erasure at the end of the list.  Does <em>anyone</em> think this was a good idea for Java???</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fstacyprowell.com%2Fblog%2F2009%2F08%2F21%2Fgood-idea-bad-idea%2F&amp;title=Good%20Idea%20%2F%20Bad%20Idea" id="wpa2a_2"><img src="http://stacyprowell.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://stacyprowell.com/blog/2009/08/21/good-idea-bad-idea/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

