<?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 for Dysfunctional Programming</title>
	<atom:link href="http://ra3s.com/wordpress/dysfunctional-programming/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://ra3s.com/wordpress/dysfunctional-programming</link>
	<description>(λ (a b) a) vs (λ (a b) b)</description>
	<lastBuildDate>Fri, 13 Aug 2010 04:27:54 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>Comment on Oracle sues Google over Android and Java by Jason</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2010/08/12/oracle-sues-google-over-android-and-java-relevant-results-cnet-news/comment-page-1/#comment-46</link>
		<dc:creator>Jason</dc:creator>
		<pubDate>Fri, 13 Aug 2010 04:27:54 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/?p=254#comment-46</guid>
		<description>So Oracle is using these Java patents to turn into a patent troll? Anti-yay.</description>
		<content:encoded><![CDATA[<p>So Oracle is using these Java patents to turn into a patent troll? Anti-yay.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Functional Programming, Reductio by Brendan Miller</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2010/07/01/functional-programming-reductio/comment-page-1/#comment-34</link>
		<dc:creator>Brendan Miller</dc:creator>
		<pubDate>Fri, 02 Jul 2010 02:34:34 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/?p=224#comment-34</guid>
		<description>I also find a mixed style appealing. I don&#039;t see any reason why some parts of a program can be referentially transparent and not others. There are many useful ways to mix functional and non functional code.

The implementation of a referentially transparent function can manipulate state internally for instance, such as stack data, so long as the caller is never exposed to these state changes. Even in C this is very common, in fact recommended.

It seems to me that the case for pure functional programming is usually overstated. It mostly buys you lazy evaluation, but you can get that in other languages as long as you manage it explicitly.</description>
		<content:encoded><![CDATA[<p>I also find a mixed style appealing. I don&#8217;t see any reason why some parts of a program can be referentially transparent and not others. There are many useful ways to mix functional and non functional code.</p>
<p>The implementation of a referentially transparent function can manipulate state internally for instance, such as stack data, so long as the caller is never exposed to these state changes. Even in C this is very common, in fact recommended.</p>
<p>It seems to me that the case for pure functional programming is usually overstated. It mostly buys you lazy evaluation, but you can get that in other languages as long as you manage it explicitly.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Best way to learn a Programming Language by Best and Free Programming Ebooks &#124; Dysfunctional Programming</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2010/05/27/best-way-to-learn-a-programming-language/comment-page-1/#comment-32</link>
		<dc:creator>Best and Free Programming Ebooks &#124; Dysfunctional Programming</dc:creator>
		<pubDate>Sun, 20 Jun 2010 02:54:17 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/?p=145#comment-32</guid>
		<description>[...] I wrote my list of some unique programming texts. But on the more practical side, there&#8217;s [...]</description>
		<content:encoded><![CDATA[<p>[...] I wrote my list of some unique programming texts. But on the more practical side, there&#8217;s [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Is it better to remain blissfully unaware… by aaron</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2010/05/31/is-it-better-to-remain-blissfully-unaware/comment-page-1/#comment-26</link>
		<dc:creator>aaron</dc:creator>
		<pubDate>Thu, 03 Jun 2010 04:37:03 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/?p=171#comment-26</guid>
		<description>I really *really* want to find an answer that isn&#039;t tragic.

One positive side I have seen is that the truly naive don&#039;t try to do advanced things in &#039;normal languages&#039; -- the entry cost to do anything is so high, they&#039;ll avoid learning anything they can. This sometimes leads to linear searches of arrays where a hash table would have been better. But fixing that is easy. Large monolithic classes? Eh, at least they tried, and it&#039;s no worse (often equivalent to) everything being global.

What happens when you give the truly naive programmer Scheme? They implement 20 data types using lg(20) levels deep nested lambda expressions. Give them Common Lisp? equally hairy macros. Haskell? They write a really pointless yet obfuscating monad, then blog about how it&#039;s like a taco.

I guess my point is that normal languages are so inefficient that they keep the truly naive from messing things up too quickly!</description>
		<content:encoded><![CDATA[<p>I really *really* want to find an answer that isn&#8217;t tragic.</p>
<p>One positive side I have seen is that the truly naive don&#8217;t try to do advanced things in &#8216;normal languages&#8217; &#8212; the entry cost to do anything is so high, they&#8217;ll avoid learning anything they can. This sometimes leads to linear searches of arrays where a hash table would have been better. But fixing that is easy. Large monolithic classes? Eh, at least they tried, and it&#8217;s no worse (often equivalent to) everything being global.</p>
<p>What happens when you give the truly naive programmer Scheme? They implement 20 data types using lg(20) levels deep nested lambda expressions. Give them Common Lisp? equally hairy macros. Haskell? They write a really pointless yet obfuscating monad, then blog about how it&#8217;s like a taco.</p>
<p>I guess my point is that normal languages are so inefficient that they keep the truly naive from messing things up too quickly!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Is it better to remain blissfully unaware… by bao</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2010/05/31/is-it-better-to-remain-blissfully-unaware/comment-page-1/#comment-25</link>
		<dc:creator>bao</dc:creator>
		<pubDate>Wed, 02 Jun 2010 19:19:06 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/?p=171#comment-25</guid>
		<description>I have similar answers. Other programming languages and environments have given me tremendous insight into software development. They&#039;ve helped me think of core problems instead of getting caught up in syntax. They&#039;ve been sources of inspiration for solutions in other languages. They&#039;ve helped me write elegant code since it&#039;s possible for elegance to flow between languages. They have value even when you can&#039;t use them, even when you can&#039;t really quantify that value.

It&#039;s somewhat depressing using normal languages, but on the other hand I see it as a challenge to produce elegant code in non-optimal languages. I&#039;ve seen others get so used to complexity and verbosity that they simply accept it without any serious thought about how things can improve. There&#039;s always room for improvement, and with that viewpoint feeling depressed is a good thing. It&#039;s tragic when you&#039;re blissfully unaware.</description>
		<content:encoded><![CDATA[<p>I have similar answers. Other programming languages and environments have given me tremendous insight into software development. They&#8217;ve helped me think of core problems instead of getting caught up in syntax. They&#8217;ve been sources of inspiration for solutions in other languages. They&#8217;ve helped me write elegant code since it&#8217;s possible for elegance to flow between languages. They have value even when you can&#8217;t use them, even when you can&#8217;t really quantify that value.</p>
<p>It&#8217;s somewhat depressing using normal languages, but on the other hand I see it as a challenge to produce elegant code in non-optimal languages. I&#8217;ve seen others get so used to complexity and verbosity that they simply accept it without any serious thought about how things can improve. There&#8217;s always room for improvement, and with that viewpoint feeling depressed is a good thing. It&#8217;s tragic when you&#8217;re blissfully unaware.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Best way to learn a Programming Language by Ximo</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2010/05/27/best-way-to-learn-a-programming-language/comment-page-1/#comment-19</link>
		<dc:creator>Ximo</dc:creator>
		<pubDate>Thu, 27 May 2010 17:59:39 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/?p=145#comment-19</guid>
		<description>Awesome list! Thanks for sharing!</description>
		<content:encoded><![CDATA[<p>Awesome list! Thanks for sharing!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Return-code vs. Exception handling by Szindbad</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2009/07/15/return-code-vs-exception-handling/comment-page-1/#comment-7</link>
		<dc:creator>Szindbad</dc:creator>
		<pubDate>Mon, 14 Sep 2009 09:40:24 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/?p=59#comment-7</guid>
		<description>I do not understand the &quot;set visible last&quot; problem. You need set visible last in any type of error handling, dont you? None of these handling styles will help make this issue more explicit.

What kind of help can that knowledge provide if i know that the developer of the code frament tries to implement error handling? I dont get it.</description>
		<content:encoded><![CDATA[<p>I do not understand the &#8220;set visible last&#8221; problem. You need set visible last in any type of error handling, dont you? None of these handling styles will help make this issue more explicit.</p>
<p>What kind of help can that knowledge provide if i know that the developer of the code frament tries to implement error handling? I dont get it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Return-code vs. Exception handling by aaron</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2009/07/15/return-code-vs-exception-handling/comment-page-1/#comment-6</link>
		<dc:creator>aaron</dc:creator>
		<pubDate>Sat, 01 Aug 2009 19:49:19 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/?p=59#comment-6</guid>
		<description>Thanks for the feedback.

Regarding #2, Yes, I moved the goalposts intentionally.  To cheat.  ^_^  You can see this in...

Regarding #1, should set_icon fail (throw), the NotifyIcon will be destroyed before the exception leaves this function.  So the &#039;set visible last&#039; issue is improved.</description>
		<content:encoded><![CDATA[<p>Thanks for the feedback.</p>
<p>Regarding #2, Yes, I moved the goalposts intentionally.  To cheat.  ^_^  You can see this in&#8230;</p>
<p>Regarding #1, should set_icon fail (throw), the NotifyIcon will be destroyed before the exception leaves this function.  So the &#8216;set visible last&#8217; issue is improved.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Return-code vs. Exception handling by Raymond</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2009/07/15/return-code-vs-exception-handling/comment-page-1/#comment-5</link>
		<dc:creator>Raymond</dc:creator>
		<pubDate>Fri, 24 Jul 2009 07:12:57 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/?p=59#comment-5</guid>
		<description>While it&#039;s true that RAII helps immensely, note that (1) you still have the &quot;must set visible last&quot; issue, and (2) you moved the goalposts: The original code was in C#, which does not support shared_ptr nor RAII. (In a GC language, all objects conceptually have infinite lifetime.)</description>
		<content:encoded><![CDATA[<p>While it&#8217;s true that RAII helps immensely, note that (1) you still have the &#8220;must set visible last&#8221; issue, and (2) you moved the goalposts: The original code was in C#, which does not support shared_ptr nor RAII. (In a GC language, all objects conceptually have infinite lifetime.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Memoizer revisited &#8211; Python by Den mipsDrams</title>
		<link>http://ra3s.com/wordpress/dysfunctional-programming/2008/11/18/memoizer-revisited-python/comment-page-1/#comment-2</link>
		<dc:creator>Den mipsDrams</dc:creator>
		<pubDate>Thu, 18 Dec 2008 14:48:18 +0000</pubDate>
		<guid isPermaLink="false">http://ra3s.com/wordpress/dysfunctional-programming/index.php/2008/11/18/memoizer-revisited-python/#comment-2</guid>
		<description>First of all congratulation for such a great site. I learned a lot reading article here today. I will make sure i visit this site once a day so i can learn more.</description>
		<content:encoded><![CDATA[<p>First of all congratulation for such a great site. I learned a lot reading article here today. I will make sure i visit this site once a day so i can learn more.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
