<?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: Functional Programming with Python &#8211; Part 1</title>
	<atom:link href="http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/</link>
	<description>Dhananjay Nene's opinions on software programming, design, architecture and the internet</description>
	<lastBuildDate>Fri, 27 Aug 2010 05:23:56 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Beej&#39;s Bit Bucket &#187; Linkfest 5</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9273</link>
		<dc:creator>Beej&#39;s Bit Bucket &#187; Linkfest 5</dc:creator>
		<pubDate>Sun, 28 Feb 2010 03:58:25 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9273</guid>
		<description>[...] Functional Programming in Python. Intro; starts easy, and thickens a bit in the middle. [...]</description>
		<content:encoded><![CDATA[<p>[...] Functional Programming in Python. Intro; starts easy, and thickens a bit in the middle. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eric Larson</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9270</link>
		<dc:creator>Eric Larson</dc:creator>
		<pubDate>Thu, 25 Feb 2010 18:15:11 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9270</guid>
		<description>Great article! I&#039;m subscribing so I don&#039;t miss Part 2.</description>
		<content:encoded><![CDATA[<p>Great article! I&#8217;m subscribing so I don&#8217;t miss Part 2.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marco</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9258</link>
		<dc:creator>Marco</dc:creator>
		<pubDate>Tue, 23 Feb 2010 21:47:44 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9258</guid>
		<description>Hi, excellent article. One recommendation, could you change the line-height to 120%?
This would make much more readable.

Regards
Marco</description>
		<content:encoded><![CDATA[<p>Hi, excellent article. One recommendation, could you change the line-height to 120%?<br />
This would make much more readable.</p>
<p>Regards<br />
Marco</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jason Baker</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9257</link>
		<dc:creator>Jason Baker</dc:creator>
		<pubDate>Tue, 23 Feb 2010 21:44:51 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9257</guid>
		<description>I feel that now is a good time to plug my library:  pysistence.

http://packages.python.org/pysistence/</description>
		<content:encoded><![CDATA[<p>I feel that now is a good time to plug my library:  pysistence.</p>
<p><a href="http://packages.python.org/pysistence/" rel="nofollow">http://packages.python.org/pysistence/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dhananjay Nene</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9256</link>
		<dc:creator>Dhananjay Nene</dc:creator>
		<pubDate>Tue, 23 Feb 2010 20:25:46 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9256</guid>
		<description>@T. Not sure if I understood your comment well enough. There is a big debate within python community about how the code should be structured (which I did kind of refer to in the &lt;em&gt;reduce&lt;/em&gt; and its alternative example). I don&#039;t know that Guido particularly cares about functional programming but I don&#039;t know that he has come in its way particularly either. If I understood his expression, he would like constructs which are readable even if they end up seeming uncool and result in some loss of brevity. 

The strength of using python for functional programming actually comes from functions being first class citizens and the massive library of functions. I really don&#039;t see any of it going away irrespective of how the BDFL or other influential voices influence things to come. As a pure functional programming language python will never compete with the Lisps and the Clojures and the Haskells - but as a mixed paradigm language being used for functional programming it makes a compelling statement and thats unlikely to change any time soon.</description>
		<content:encoded><![CDATA[<p>@T. Not sure if I understood your comment well enough. There is a big debate within python community about how the code should be structured (which I did kind of refer to in the <em>reduce</em> and its alternative example). I don&#8217;t know that Guido particularly cares about functional programming but I don&#8217;t know that he has come in its way particularly either. If I understood his expression, he would like constructs which are readable even if they end up seeming uncool and result in some loss of brevity. </p>
<p>The strength of using python for functional programming actually comes from functions being first class citizens and the massive library of functions. I really don&#8217;t see any of it going away irrespective of how the BDFL or other influential voices influence things to come. As a pure functional programming language python will never compete with the Lisps and the Clojures and the Haskells &#8211; but as a mixed paradigm language being used for functional programming it makes a compelling statement and thats unlikely to change any time soon.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: T</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9255</link>
		<dc:creator>T</dc:creator>
		<pubDate>Tue, 23 Feb 2010 20:10:51 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9255</guid>
		<description>Excellent post demonstrating exactly why functional programmers think Guido has it out for them.</description>
		<content:encoded><![CDATA[<p>Excellent post demonstrating exactly why functional programmers think Guido has it out for them.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dhananjay Nene</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9253</link>
		<dc:creator>Dhananjay Nene</dc:creator>
		<pubDate>Tue, 23 Feb 2010 19:55:20 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9253</guid>
		<description>Sure. itertools deserves a complete post for itself :)</description>
		<content:encoded><![CDATA[<p>Sure. itertools deserves a complete post for itself <img src='http://blog.dhananjaynene.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dhananjay Nene</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9252</link>
		<dc:creator>Dhananjay Nene</dc:creator>
		<pubDate>Tue, 23 Feb 2010 19:48:42 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9252</guid>
		<description>Changed the theme from a black background to a light background. Let me know if anyone finds this difficult to read.</description>
		<content:encoded><![CDATA[<p>Changed the theme from a black background to a light background. Let me know if anyone finds this difficult to read.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stephen McDonald</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9250</link>
		<dc:creator>Stephen McDonald</dc:creator>
		<pubDate>Tue, 23 Feb 2010 19:37:14 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9250</guid>
		<description>Nice article. Certainly the next step would be for you to delve much deeper into the itertools module that contains a wealth of tools for list processing, one of the cornerstones of functional programming!</description>
		<content:encoded><![CDATA[<p>Nice article. Certainly the next step would be for you to delve much deeper into the itertools module that contains a wealth of tools for list processing, one of the cornerstones of functional programming!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dhananjay Nene</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9249</link>
		<dc:creator>Dhananjay Nene</dc:creator>
		<pubDate>Tue, 23 Feb 2010 19:10:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9249</guid>
		<description>I am trying to figure out what is the exact issue, so would love any feedback if anyone else is also facing a similar situation (knowing the browser/OS combo would help). Thanks.</description>
		<content:encoded><![CDATA[<p>I am trying to figure out what is the exact issue, so would love any feedback if anyone else is also facing a similar situation (knowing the browser/OS combo would help). Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dzenan Ridjanovic</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9248</link>
		<dc:creator>Dzenan Ridjanovic</dc:creator>
		<pubDate>Tue, 23 Feb 2010 19:05:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9248</guid>
		<description>I cannot see easily your code. Please change the background color.</description>
		<content:encoded><![CDATA[<p>I cannot see easily your code. Please change the background color.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dhananjay Nene</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9247</link>
		<dc:creator>Dhananjay Nene</dc:creator>
		<pubDate>Tue, 23 Feb 2010 18:56:08 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9247</guid>
		<description>Flanked,

Yes there was so much to write about, there was a lot of stuff I couldn&#039;t include including the performance superiority of the for loop over the reduce lambda due to the natural inlining. But if I am not wrong the overhead is not so much creating the temporary function as much as invoking it a large number of times (vs. inlining it as done by the for loop)</description>
		<content:encoded><![CDATA[<p>Flanked,</p>
<p>Yes there was so much to write about, there was a lot of stuff I couldn&#8217;t include including the performance superiority of the for loop over the reduce lambda due to the natural inlining. But if I am not wrong the overhead is not so much creating the temporary function as much as invoking it a large number of times (vs. inlining it as done by the for loop)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Flanked</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9245</link>
		<dc:creator>Flanked</dc:creator>
		<pubDate>Tue, 23 Feb 2010 18:34:17 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9245</guid>
		<description>Spell-checker got me. ack.
.. reduce the impact of the overhead from creating the temporary function.</description>
		<content:encoded><![CDATA[<p>Spell-checker got me. ack.<br />
.. reduce the impact of the overhead from creating the temporary function.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Flanked</title>
		<link>http://blog.dhananjaynene.com/2010/02/functional-programming-with-python-part-1/comment-page-1/#comment-9244</link>
		<dc:creator>Flanked</dc:creator>
		<pubDate>Tue, 23 Feb 2010 18:30:36 +0000</pubDate>
		<guid isPermaLink="false">http://blog.dhananjaynene.com/?p=970#comment-9244</guid>
		<description>Excellent post and examples showing some sample FP usage in Python. 

If I were to add one thing, I&#039;d include a built-in function composition to functools to remove the need for lambdas and hopefully improve the performance. I have a hard time switching to FP tools when a for loop can perform better, even on large data sets to reducing the import of the overhead of creating the temporary function.</description>
		<content:encoded><![CDATA[<p>Excellent post and examples showing some sample FP usage in Python. </p>
<p>If I were to add one thing, I&#8217;d include a built-in function composition to functools to remove the need for lambdas and hopefully improve the performance. I have a hard time switching to FP tools when a for loop can perform better, even on large data sets to reducing the import of the overhead of creating the temporary function.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.513 seconds -->
