April 15th, 2009
For those trying to keep track of the myriad Microsoft efforts in the parallel programming/distributed computing space, here’s a new language to add to your list: Axum.
Axum is the updated codename for the project formerly known as Microsoft Maestro. (Not the same Maestro that referred to a Microsoft business-intelligence project; this one is all about parallel programming.)
Forget the name for a minute. Axum is an interesting piece of Microsoft’s evolving parallel-programming puzzle. Microsoft defintes Axum as a “.Net coordination language for safe concurrency.” Another description of Axum: “A domain-specific language for concurrent programming.”
From a new description of Axum I saw on the line-up for the company’s Lang.Net conference that’s happening in Redmond this week:
“It’s a language that builds upon the architecture of the web and the principles of isolation, agents, and message-passing to increase application safety, responsiveness, scalability and developer productivity. Other advanced concepts we are exploring are data flow networks, asynchronous methods, and type annotations for taming side-effects. We currently have a working prototype with basic Visual Studio integration and a few demonstrations of working code.”
As Microsoft revealed in a Channel 9 video (when Axum was still called Maestro), Axum is built on top of the CCR, the concurrency and coordination runtime engine that is part of Microsoft’s Robotics Toolkit.
As Parallel Computing Platform Program Manager Joshua Phillips cautioned via his blog, “Axum is an incubation technology and Microsoft has not committed to shipping it.” But it sounds like this incubation might be a bit closer to shipping than some of Microsoft’s others (like Midori, for instance).