F# events are popping up all over the place and so I’ve included a separate section for them today.  As far as posts go I’ve stumbled across immutable queue and range libraries,  a post on the underlying implementation of discriminated unions, using the reactive framework and finally, a Microsoft research project: F7 Refinement Types.

 

-- Events --

Talbott Crowell is Presenting at the New England Visual Basic Professionals, November 5th

  • Introducing F# at 6:15pm

 

I am Presenting at Fairfield / Westchester Code Camp 2009 on November 7th

  • Why F# at 11:15am in Track 2
  • F# for Testing and Analysis at 2:40pm in Track 4

 

NashDotNet - F# Firestarter in Franklin, TN on November 14th

Come with an open mind and a laptop. Be prepared to learn, share, and chat. No prior knowledge or experience with F# is expected.

 

 

-- Posts --

Julien’s An Immutable Range Library in F# 

An immutable range library in F# where a range is only defined by a minimum and a maximum value (hence, there is no step).

and Julien’s An immutable Queue Library in F#

An immutable queue library in F#. The queue is divided into two lists : one for dequeueing, and one for enqueueing. All operations are based on the List module.

I hope that Julien considers contributing these gems to the F# Power Pack.

 

F7: Refinement Types for F#

F7 is an enhanced type checker for the F# programming language. F7 supports static checking of properties expressed with refinement types. Our motivation is to check various security properties of F# implementation code by typing.

I took a peek at the included samples and found myself quite lost.  It would be great if a walkthrough on how to use F7 were to pop up.

 

Using F# Discriminated Unions in C# (VS2010 Beta 2)

While updating my VsVim editor extensions for Beta2 [1] I got hit by a change in the way F# exposed discriminated unions in metadata.

A quick romp through how discriminated unions work under the hood and how you use them from C#.

 

IObservable/IObserver – Using the Reactive Framework with F#

One of the nice new features in .NET 4.0 beta 2 is the IObservable<T>/IObserver<T> support from the Reactive Framework (“Rx Framework” or sometimes “LinqToEvents”). It is a really powerful way to use reactive programming in .NET and especially in F# developed by Erik Meijer and his team.