November 2007 Blog Posts

Concurrency in F# – Part IV – Queuing Working using Semaphores or Message Queues

In part three of this series we looked at how message queues could be used to receive updates from multiple threads and ensure that a data structure remain consistent. Now I would like to look at how messages queue can be used to spread work between different queues to allow it to the work to be performed in parallel. We will also look at an alternative mechanism of doing this using semaphores. To illustrate this we’re going to take another look at option pricing as we did in the “Recalculating Values Only When Dependencies Change” series. We’ll used the same simplified...

F# on InfoQ

I have written an article for InfoQ explaining the Active Patterns, a new feature of F# that didn't make it into "Foundations of F#". Read it here.