Come in and see what’s new in the F# world.  Every week is seems there is ever more content on an increasingly wider variety of topics.  The community is growing at a very fast pace.  Because of this, I’ve decided to change things up a bit with a new format.  I hope you’ll find it enhances your experience in exploring this mountain of fresh F# information.

 

News

Silverlight 4 runtime has been released with F# support

The F# PowerPack 2.0.0.0 is out and supports Silverlight 3 and 4

WebSharper 2010 1.0 is out and is free for commercial use

F# Project Extender 0.9.2.1 has been released

The CUFP 2010 and ML 2010 Call for Presentations is active

F# is on InformationWeek 500: 20 Great Ideas To Steal

 

Video / Audio

Don Syme Talks with Sadek Drobi About F# 2.0, a First Class Citizen in Visual Studio 2010

Don Syme speaks about F# 2.0, its application fields, its integration in Visual Studio 2010 and F# open source Power Pack library. Don also discusses the genesis of F#, the ties with OCaml as well as its specificity.

 

Don Syme Answering Questions on F#, C#, Haskell and Scala

In this interview made by InfoQ’s Sadek Drobi, Don Syme, a Senior Researcher at Microsoft Research, answers questions mostly on F#, but also on functional programming, C# generics, type classes in Haskell, similarities between F# and Scala.

 

Amanda Laucher and Josh Graham – The state of the Art on .NET

Amanda Laucher and Josh Graham present at an introductory level some of the most important elements of the .NET ecosystem: F#, M, Boo, NUnit, RhinoMocks, Moq, NHibernate, Castle, Windsor, NVelocity, Guerilla WCF, Azure, MEF.

 

.NET Rocks F# Panel Live from NERD Center, Cambridge, MA

While on the Road Trip, Carl and Richard recorded this panel discussion with Talbott Crowell, Rick Minerich and Richard Hale Shaw on F# at the Microsoft New England Research and Development Center. The panel makes a very compelling case for adding a functional language to your toolchest.

 

Blogs

Brian McNamara’s Proggit Subreddit Graph in F# and DGML

Dear Proggit: graphs are cool, but I prefer F#, so I graphed the subreddit interconnections with F# and DGML

 

James’ Implementing map-reduce in F#

Again, F# proves to be a remarkably succinct language to express problems, in this case the built in syntactic sugar for tuples is a godsend!

 

Daniel Mohl’s F# ASP.NET MVC 2 Web Application Template and
Creating an F# Template for Visual Studio 2010

Tomas Petricek recently provided a great blog post on creating MVC web applications in F#.  I thought it might be nice to also have a template that replicates the functionality of the standard C# ASP.NET MVC 2 Web Application template.

 

Daniel Mohl’s A Simple Inversion of Control (IoC) Container in F#

In this post I will show how to build a simple Inversion of Control (IoC) container in F#

 

Daniel Mohl’s Getting Started with WebSharper Platform 2010

A little while ago a cool new product was brought to my attention that allows client-based web development in F#.  The name of this product is WebSharper Platform 2010.  In this post, I will show a simple example for getting started with WebSharper Platform 2010.

 

Neil Carrier’s Computation Expressions with .NET Data Types

I’m still working on my proof-of-concept and it’s going well. One thing that’s been on my mind is the desire to use computation expressions in it somewhere. So I’ve been trying to make sure I understood computation expressions well enough to use them to good purpose.

 

Neil Carrier’s Active Pattern Activity and More Active Pattern Activity

I have to say the F# proof of concept is still going a lot better than I had ever hoped. Not only is it easy to port the basic algorithms from C# where applicable, but the kind of straightforward design that “functional-thinking” encourages is making for a better program with much less source code.

 

Phillip Trelford’s Exposing F# Dynamic Lookup to C#, WPF and Silverlight

Sometimes dynamic typing can be a pragmatic way of solving a specific problem. For example say you’re a solutions provider with a core product and have a number of clients with bespoke requirements. One client asks for a product rating feature. This can be relatively easily achieved using dynamic properties:

 

Phillip Trelford’s F# operator overloads for WPF dependency properties

Creating WPF elements directly from F# can produce good self-contained code, but at time is a little less readable than the XAML equivalent. Lets consider placing a button bound to a command on a grid at a certain position.

 

Clive Tong’s Towards an F# .NET Reflector add-in

When I had the opportunity to spent some time during Red Gate's recent "down tools" week on a project of my choice, the obvious project was an F# add-in for Reflector.

 

Clive Tong’s F# and the rose-tinted reflection

We're already seeing increasing use of many cores on client desktops. It is a change that has been long predicted.

 

Julien Ortin’s Technical analysis indicators in F# – Metadata and Reflection

In this part, we show how to use reflection to fetch the metadata attributes we have described in the first part of the technical analysis series.

 

Steve Gilham’s F# - excessively lazy sequences and stateful visitors

Doing something a little bit complicated here: the functional equivalent of a visitor pattern, where I want to apply a few functions to a long and potentially expensive to traverse sequence of items (so ruling out a series of iterations over the visited nodes)

 

Jon Harrop’s Mini hash table

Imagine you're stuck on a desert island with only a few keystrokes and you desperately need to create your own rudimentary hash table. What might you do?

 

Jomo Fisher’s How to Enumerate all WMI Classes

This is the F# code you would use to enumerate all WMI classes on your system and show the properties of each. of each.

 

Fredrik Holmstrom’s F# short hand syntax for maps and sets

I’ve always though it a shame that there is no in language short hand syntax for maps and sets in F#, something like {{foo = 1; bar = 2}} and {#1, 2#} – but having a very flexible language at my disposal I set out to find some way to achieve this, mostly for fun – but maybe someone will find a practical use of it.

 

Community

From StackOverflow: Scala vs F#, How do they unify OO and FP?

What are the key differences between the approaches taken by Scala and F# to unify OO and FP paradigms?

 

From StackOverflow: F# Static Member Type Constraints

I'm trying to define a function, factorize, which uses structural type constraints (requires static members Zero, One, +, and /) similar to Seq.sum so that it can be used with int, long, bigint, etc. I can't seem to get the syntax right, and can't find a lot of resources on the subject. This is what I have, please help.