Actors in F#

It’s been a while since I posted anything here, mainly because we’ve been busy on the Axum team blog over the last few weeks and months. Inspired by this post by Matthew Podwysocki, I thought it would be interesting to show actors in F#, which are closely related to the Axum model. PingPong is a…



I had expected that the first word on Maestro would come on this blog, but that’s what happens when you take time between posts. We first discussed it during PDC at the Thursday panel on parallel programming, we discussed it on Channel 9, and then Josh Phillips posted his excellent article about isolation and message-passing on the PFX team blog. It was…


Isolation in Maestro

As noted in the Dr Dobb’s article, Maestro is primarily about establishing isolation domains so that we can cut down on the number of undocumented dependencies between components. With a language like C# or VB, any two references of type T could be referring to the same object, and if you consider a whole object…


C++ Agents

At PDC 2008, we talked a lot about agents-based programming, in particular during the native C++ talks on parallel programming. We showed how the agents library that we plan to ship in VS 2010 can be used to overlap I/O with computationally intensive processing to raise the throughput of a program. I thought I should…


What About Today’s Gigacore Applications?

As should be clear from the previus post, I’m not a big fan of the threads + locks model. An alternative approach is the one offered by message-passing, which is used every day in distributed applications and with enormous success. The world-wide web is one giant concurrent application, if you will: millions of processors are…


Last Day at PDC

The symposium panel Thursday went off pretty well. A much smaller crowd than at the other talks, but it was late in the program and people were starting heading home. It’s not easy to compete with lunch, either. Not a lot of controversy on the panel, we were mostly talking about futures in our different…


Getting started

I have no idea how many concurrency-related blogs there may be on MSDN nowadays, but here’s another one. Hopefully, there will be an angle or two that are unique or at least not common to all of them. My name is Niklas Gustafsson and I work in the developer division as a software architect. The…


Maestro Blog Available

In my last post, I lamented that there was no Maestro-specific blog, but no sooner had I spoken… Josh Phillips got us set up with something specific to Maestro, where we’ll be posting most things related to this incubation effort.


Auction Simulation in C++

My fellow programming language enthusiast Matthew Podwysocki just posted another F#-based actor sample in his blog; it is a simulation of an auction that was first written in Scala. Last time, I followed his Axum Ping-Pong example with my own F#-based version, but this time, I’ll use his example to point to some of the…


PDC Day 3

I did my first talk Wednesday, “A Deep Dive Into the Concurrency Runtime,” where I talked about how to extend the PPL and Agents native libraries and how to build your own scheduler with our runtime. A rather dry topic, I almost managed to bore myself. However, the room was filled to capacity and more,…