<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Nick's Blog</title>
	<atom:link href="http://nholmes.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://nholmes.wordpress.com</link>
	<description>Building Line of Business Applications in .Net</description>
	<lastBuildDate>Fri, 15 Feb 2008 16:26:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='nholmes.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Nick's Blog</title>
		<link>http://nholmes.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://nholmes.wordpress.com/osd.xml" title="Nick&#039;s Blog" />
	<atom:link rel='hub' href='http://nholmes.wordpress.com/?pushpress=hub'/>
		<item>
		<title>WPF with F# &#8211; Not A Happy Mix</title>
		<link>http://nholmes.wordpress.com/2008/02/15/wpf-with-f-not-a-happy-mix/</link>
		<comments>http://nholmes.wordpress.com/2008/02/15/wpf-with-f-not-a-happy-mix/#comments</comments>
		<pubDate>Fri, 15 Feb 2008 16:26:14 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[F#]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/2008/02/15/wpf-with-f-not-a-happy-mix/</guid>
		<description><![CDATA[I've had a look at various samples of F#/WPF, and contrasted that with the experience I've gained over the last 15 months doing a lot of commercial WPF. I can see a lot of potential for F#, but not combined with WPF. Here's why:<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=28&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/15/wpf-with-f-not-a-happy-mix/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
		<item>
		<title>Using LINQ To SQL in the F# WCF Web Service, Part 2</title>
		<link>http://nholmes.wordpress.com/2008/02/13/using-linq-to-sql-in-the-f-wcf-web-service-part-2/</link>
		<comments>http://nholmes.wordpress.com/2008/02/13/using-linq-to-sql-in-the-f-wcf-web-service-part-2/#comments</comments>
		<pubDate>Wed, 13 Feb 2008 22:02:45 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[F#]]></category>
		<category><![CDATA[LINQ]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/2008/02/13/using-linq-to-sql-in-the-f-wcf-web-service-part-2/</guid>
		<description><![CDATA[When we use LINQ To SQL in C#, the compiler doesn't generate IL to implement our query - we want Sql Server to execute the query, and so IL would not be much good. Instead the compiler creates data that describes our query, in the form of a System.Linq.Expressions.Expression. When the query needs to be executed, LINQ to SQL examines the expression and converts it to the equivalent T-SQL, and sends that to the database for execution.

It follows, then, that if we want to use LINQ-To-SQL in F#, we'd like to get the F# compiler to convert our code into a System.Linq.Expressions.Expression. The surprising news is, the F# compiler can't do this directly.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=16&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/13/using-linq-to-sql-in-the-f-wcf-web-service-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
		<item>
		<title>Using LINQ To SQL in the F# WCF Web Service, Part 1</title>
		<link>http://nholmes.wordpress.com/2008/02/12/using-linq-to-sql-in-the-f-wcf-web-service-part-1/</link>
		<comments>http://nholmes.wordpress.com/2008/02/12/using-linq-to-sql-in-the-f-wcf-web-service-part-1/#comments</comments>
		<pubDate>Tue, 12 Feb 2008 17:19:37 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[F#]]></category>
		<category><![CDATA[LINQ]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/?p=15</guid>
		<description><![CDATA[To use LINQ To SQL, we need a Data Context object to provide our point of entry. It might be possible to use a System.Data.Linq.DataContext object directly, but its more usual to derive from this class to make a database specific version. Additionally, we need classes to represent our "entities". These define the mapping to the tables (or views) and columns.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=15&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/12/using-linq-to-sql-in-the-f-wcf-web-service-part-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
		<item>
		<title>Problems with WCF Data Contracts in F#</title>
		<link>http://nholmes.wordpress.com/2008/02/08/problems-with-wcf-data-contracts-in-f/</link>
		<comments>http://nholmes.wordpress.com/2008/02/08/problems-with-wcf-data-contracts-in-f/#comments</comments>
		<pubDate>Fri, 08 Feb 2008 17:50:34 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[F#]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/2008/02/08/problems-with-wcf-data-contracts-in-f/</guid>
		<description><![CDATA[On the road to a really interesting Web Service, I increased the complexity of my &#8220;could-not-be-simpler&#8221; web service one notch, and added a class-typed argument to the operation. This requires constructing of a Data Contract, so that WCF can build the correct WSDL, and also know how to serialize (and de-serialize) messages. As with the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=14&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/08/problems-with-wcf-data-contracts-in-f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
		<item>
		<title>An WCF Service Host in F#</title>
		<link>http://nholmes.wordpress.com/2008/02/06/a-wcf-service-host-in-f/</link>
		<comments>http://nholmes.wordpress.com/2008/02/06/a-wcf-service-host-in-f/#comments</comments>
		<pubDate>Wed, 06 Feb 2008 17:03:49 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[F#]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/2008/02/06/a-wcf-service-host-in-f/</guid>
		<description><![CDATA[I had half an hour to fill while I waited for a large download, on my slow connection. I'd thought about re-implementing my C# WCF test host in F#. It didn't look too complex, and indeed it wasn't:<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=13&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/06/a-wcf-service-host-in-f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
		<item>
		<title>Accessing F# Interface Implementations from C#</title>
		<link>http://nholmes.wordpress.com/2008/02/06/accessing-f-interface-implementations-from-c/</link>
		<comments>http://nholmes.wordpress.com/2008/02/06/accessing-f-interface-implementations-from-c/#comments</comments>
		<pubDate>Wed, 06 Feb 2008 16:40:17 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[F#]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/2008/02/06/accessing-f-interface-implementations-from-c/</guid>
		<description><![CDATA[I tidied up my F# web service, mainly by factoring out an interface for the web service. Without the attributes it looks like this:<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=12&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/06/accessing-f-interface-implementations-from-c/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
		<item>
		<title>An F# WCF Web Service</title>
		<link>http://nholmes.wordpress.com/2008/02/06/an-f-wcf-web-service/</link>
		<comments>http://nholmes.wordpress.com/2008/02/06/an-f-wcf-web-service/#comments</comments>
		<pubDate>Tue, 05 Feb 2008 23:05:53 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[F#]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/2008/02/06/an-f-wcf-web-service/</guid>
		<description><![CDATA[For all the power and flexibility that WCF provides, creating a basic web service in C# is easy enough. Essentially, it&#8217;s just a POCO adorned with some special attributes. Doing the same thing in F#, then, should also be easy enough. I tried this: #light #I @"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\" #r "System.ServiceModel.dll" open System.ServiceModel [&#60;ServiceContract(ConfigurationName = [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=11&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/06/an-f-wcf-web-service/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
		<item>
		<title>Curried Functions In C#</title>
		<link>http://nholmes.wordpress.com/2008/02/05/curried-functions-in-c/</link>
		<comments>http://nholmes.wordpress.com/2008/02/05/curried-functions-in-c/#comments</comments>
		<pubDate>Tue, 05 Feb 2008 15:59:53 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[F#]]></category>
		<category><![CDATA[Functional Programming]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/2008/02/05/curried-functions-in-c/</guid>
		<description><![CDATA[I previously said that C#&#8217;s lambda functions were not curried, and it wasn&#8217;t possible to partially apply them. However, it&#8217;s usually possible to manually curry functions, if you need to. Here is an example: static void Main(string[] args){&#160;&#160;&#160; int t = f(1)(3)(5)(7); &#160;&#160;&#160; Console.WriteLine("{0}", t); &#160;&#160;&#160; var g = f(1);&#160;&#160;&#160; var h = g(3);&#160;&#160;&#160; var [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=10&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/05/curried-functions-in-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
		<item>
		<title>Many Choices.</title>
		<link>http://nholmes.wordpress.com/2008/02/05/many-choices/</link>
		<comments>http://nholmes.wordpress.com/2008/02/05/many-choices/#comments</comments>
		<pubDate>Mon, 04 Feb 2008 23:51:12 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/2008/02/05/many-choices/</guid>
		<description><![CDATA[Some years ago, when faced with sorting out a large and troubled project on a very short timescale, my colleague (Ivo) and I started the evolution of a code generation strategy for handling various aspects of n-tier applications. We published a paper at the time (Metadata Driven Code Generation Using .Net Framework), and the toolset [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=9&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/05/many-choices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
		<item>
		<title>Do I have to have a curried function in F#?</title>
		<link>http://nholmes.wordpress.com/2008/02/02/do-i-have-to-have-a-curried-function-in-f/</link>
		<comments>http://nholmes.wordpress.com/2008/02/02/do-i-have-to-have-a-curried-function-in-f/#comments</comments>
		<pubDate>Sat, 02 Feb 2008 14:06:05 +0000</pubDate>
		<dc:creator>Nick Holmes</dc:creator>
				<category><![CDATA[F#]]></category>

		<guid isPermaLink="false">http://nholmes.wordpress.com/?p=6</guid>
		<description><![CDATA[All this currying and partial application stuff is all very interesting, but surely its has to have some kind of run-time performance hit. What if I just want to keep things straightforward? Firstly, if we have a function that takes only a single argument, there is nothing to curry. It makes no sense to call [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=nholmes.wordpress.com&amp;blog=2681624&amp;post=6&amp;subd=nholmes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
		<wfw:commentRss>http://nholmes.wordpress.com/2008/02/02/do-i-have-to-have-a-curried-function-in-f/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/149981187e394f425ce893d92672f873?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Nick</media:title>
		</media:content>
	</item>
	</channel>
</rss>
