Axum – safe and productive parallel programming model for .net

Today I read an interesting news on PcworldVn . It relates to a new programming language of Microsoft which can work with Visual Studio 2008 and .Net framework. This new is called “Axum, “a language that builds upon the architecture of the Web and principles of isolation, actors, and message-passing to increase application safety, responsiveness, scalability, and developer productivity”.

So what is the meaning of parallel programming? I quote parallel programmings definition from other website.

  • Parallel programming involves:
    • Decomposing an algorithm or data into parts
    • Distributing the parts as tasks which are worked on by multiple processors simultaneously
    • Coordinating work and communications of those processors
  • Parallel programming considerations:
    • Type of parallel architecture being used
    • Type of processor communications used

An obvious motivation for writing a parallel program is to make it run faster. Closely related to that is  a  desire  to  make  the  program  do  more  while  it’s  running.    This  is  especially  important  for interactive applications that must process user input while performing a background task.

Very often, responsiveness of interactive applications is hindered by long-latency components such as  I/O or user  input. For  example,  an  email  client must wait  for  the data  from  the  server, which might be behind a slow network. It is desirable that such an application remains responsive while requesting data from the server.

All describation above seems like to a well-know concept Multi-Threading. If you know a platform for Multi-Threading in C++ “OpenMP”, you will understand what Axum is for. They all support multi-task and parallel programming. However there are a big differences between OpenMP and Axum. OpenMP is a library and it is very easy to use with your source code but you can really not define the way it work. You can only configure it, not define it. Axum provides another way for you. With Axum you control most everything because it is only a programming language.

For more information about Axum you can read at its Programmer’s Guide and Language Specification.

Leave a comment

Your email address will not be published. Required fields are marked *