<?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>gnucom.cc &#187; functional programming</title>
	<atom:link href="http://blog.gnucom.cc/tag/functional-programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.gnucom.cc</link>
	<description>Code snippets and more...</description>
	<lastBuildDate>Wed, 18 Jan 2012 23:50:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Greatest common denominator in Scheme.</title>
		<link>http://blog.gnucom.cc/2010/greatest-common-denominator-in-scheme/</link>
		<comments>http://blog.gnucom.cc/2010/greatest-common-denominator-in-scheme/#comments</comments>
		<pubDate>Mon, 20 Sep 2010 02:37:10 +0000</pubDate>
		<dc:creator>sholsapp</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[functional programming]]></category>
		<category><![CDATA[math]]></category>
		<category><![CDATA[PLT Racket]]></category>
		<category><![CDATA[scheme]]></category>

		<guid isPermaLink="false">http://blog.gnucom.cc/?p=1053</guid>
		<description><![CDATA[Here I&#8217;ve implemented Euclid&#8217;s famous functions for calculating the greatest common denominator. I&#8217;ve also implemented a slight addition that allows us to calculate the integer coefficients x and y such that d = gcd(a, b) = ax + by. These algorithms were adapted from Thomas Cormen&#8217;s exercises on pages 859-860 of Introduction to Algorithms, 2nd [...]]]></description>
		<wfw:commentRss>http://blog.gnucom.cc/2010/greatest-common-denominator-in-scheme/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Writing a simple PLT Racket program with a test case.</title>
		<link>http://blog.gnucom.cc/2010/writing-a-simple-plt-racket-program-with-a-test-case/</link>
		<comments>http://blog.gnucom.cc/2010/writing-a-simple-plt-racket-program-with-a-test-case/#comments</comments>
		<pubDate>Mon, 20 Sep 2010 01:03:39 +0000</pubDate>
		<dc:creator>sholsapp</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[functional programming]]></category>
		<category><![CDATA[PLT Racket]]></category>
		<category><![CDATA[scheme]]></category>

		<guid isPermaLink="false">http://blog.gnucom.cc/?p=1046</guid>
		<description><![CDATA[I&#8217;m considering deploying a small PLT Racket web server so I thought I should brush up on the most recent version of Scheme that I&#8217;m familiar with: PLT Racket. The following is a small sample program and the syntax for testing that function. #lang racket &#160; &#40;require test-engine/racket-tests&#41; &#160; &#40;define &#40;my-factorial x&#41; &#40;cond &#91;&#40;= x [...]]]></description>
		<wfw:commentRss>http://blog.gnucom.cc/2010/writing-a-simple-plt-racket-program-with-a-test-case/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using reduce in Python.</title>
		<link>http://blog.gnucom.cc/2010/using-reduce-in-python/</link>
		<comments>http://blog.gnucom.cc/2010/using-reduce-in-python/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 01:46:36 +0000</pubDate>
		<dc:creator>sholsapp</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[functional programming]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://blog.gnucom.cc/?p=825</guid>
		<description><![CDATA[Python has a built in operator called reduce. This is just another name for what a functional programmer would called a fold. They&#8217;re really useful, but you don&#8217;t know so until you actually need one. The easiest example to understand is listed below and is the same example provided on Python&#8217;s documentation. lon = &#91;1, [...]]]></description>
		<wfw:commentRss>http://blog.gnucom.cc/2010/using-reduce-in-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Applying functions to arguments in Python.</title>
		<link>http://blog.gnucom.cc/2010/applying-functions-to-arguments-in-python/</link>
		<comments>http://blog.gnucom.cc/2010/applying-functions-to-arguments-in-python/#comments</comments>
		<pubDate>Fri, 16 Jul 2010 00:59:23 +0000</pubDate>
		<dc:creator>sholsapp</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[functional programming]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://blog.gnucom.cc/?p=791</guid>
		<description><![CDATA[One of my favorite features of functional programming languages is that you can treat functions like values. You can assign them like any other value, but most interestingly you can apply them! Though Python requires that you use a special notation to do so, I wanted to write this down so that it is clear [...]]]></description>
		<wfw:commentRss>http://blog.gnucom.cc/2010/applying-functions-to-arguments-in-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Writing your own arithmetic language in F#.</title>
		<link>http://blog.gnucom.cc/2010/writing-your-own-arithmetic-language-in-f/</link>
		<comments>http://blog.gnucom.cc/2010/writing-your-own-arithmetic-language-in-f/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 19:02:08 +0000</pubDate>
		<dc:creator>sholsapp</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[F#]]></category>
		<category><![CDATA[functional programming]]></category>
		<category><![CDATA[languages]]></category>

		<guid isPermaLink="false">http://gnucom.cc/blog/?p=615</guid>
		<description><![CDATA[During a programming languages course, we were asked to write an arithmetic language. The exercise was meant to teach some fundamental ideas regarding what a programming language is. So without further delay, here is the result of my first arithmetic language. type AE = &#124; Num of int &#124; Sum of AE * AE &#160; [...]]]></description>
		<wfw:commentRss>http://blog.gnucom.cc/2010/writing-your-own-arithmetic-language-in-f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Currying in F#.</title>
		<link>http://blog.gnucom.cc/2010/currying-in-f/</link>
		<comments>http://blog.gnucom.cc/2010/currying-in-f/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 18:57:09 +0000</pubDate>
		<dc:creator>sholsapp</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[currying]]></category>
		<category><![CDATA[F#]]></category>
		<category><![CDATA[functional programming]]></category>

		<guid isPermaLink="false">http://gnucom.cc/blog/?p=608</guid>
		<description><![CDATA[Currying is a powerful programming technique that allows you to apply parameters to a function, even if you don&#8217;t have all of the parameters quite yet! This example is written in F#. Lets start with a simple example. let curry f a = f a let adder = &#40;curry &#40;fun x -&#62; x + 1&#41;&#41; [...]]]></description>
		<wfw:commentRss>http://blog.gnucom.cc/2010/currying-in-f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mapping in F#.</title>
		<link>http://blog.gnucom.cc/2010/mapping-in-f/</link>
		<comments>http://blog.gnucom.cc/2010/mapping-in-f/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 18:33:00 +0000</pubDate>
		<dc:creator>sholsapp</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[F#]]></category>
		<category><![CDATA[functional programming]]></category>
		<category><![CDATA[map]]></category>

		<guid isPermaLink="false">http://gnucom.cc/blog/?p=603</guid>
		<description><![CDATA[This is a very simple example that illustrates the the &#8216;map&#8217; concept used in functional programming. This example is written in F#. Mapping is a popular programming concept that lets you apply a function to each element of a list or collection. The return value of a map operation is another list. Because the same [...]]]></description>
		<wfw:commentRss>http://blog.gnucom.cc/2010/mapping-in-f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

