We have a great selection of links this week with topics including discriminated unions, equality and comparison constraints, purely functional data structures, a language performance comparison, and a couple of 1.9.7.8 compatibility tweaks for XNA and Silverlight.

Also, the first Monday of the month approaches and with it another meeting of the New England F# User Group.  Talbott Crowell will be speaking on F#’s asynchronous programming features with a beginner audience in mind. 

 

-- Events --

Talbott Crowell is Speaking at the New England F# User Group

 

-- Links --

Gordon Hogenson Explains Discriminated Unions

In this video, programming writer, Gordon Hogenson explains and gives examples of discriminated unions in F#. 

 

Brian McNamara’s Motivating F# equality and comparison constraints

By reading this blog entry, the reader should learn: what structural equality and comparison are, what is the problem that F# equality/comparison constraints solve, why this problem cannot be solved without a specific language feature, [and] when does a programmer need to care about this.

 

Julien Ortin’s Purely Functional Data Structures in F#: Leftist Heap, Finite Map and Binary Search Tree.

This post describes the F# implementation of the [leftist heap, finite map, binary search tree] from Chris Okasaki’s “Purely functional data structures”.

 

Phillip Trelford’s C++ vs C# vs F# vs Haskell

Since I first posted an F# solution to Left-Truncatable Primes, C# and Haskell have entered the frame, and although this is not a good problem for a serious comparison of languages, I think it is still interesting.

 

Steve Gilham’s F# October CTP and Silverlight 3.0

and also his F# and Silverlight 3 addendum

There's an official Silverlight 3.0 project template for Visual Studio 2008; while targetted at the May CTP, these can be used with the October CTP by opening up the .fsproj file and amending the file path for the FSharp.Core assembly.

 

Joh’s F# on the XBox 360

This article describes how to build an XNA Game Studio application using an F# library in such a way that it can be run on the Xbox 360. It applies to the current version of F#, 1.9.7.8.

 

Talbott Crowell’s Adding Parallel Extensions to F# for VS2010 Beta 2

Matthew Podwysocki comes to the rescue with his blog post Adding Parallel Extensions to F#.  Unfortunately his code example doesn't work in VS 2010 Beta 2 (his post was from February.)