Axum Published! Tutorial: Building your first Axum application
- Posted: May 07, 2009 at 10:45 AM
- 45,169 Views
- 9 Comments
Loading User Information from Channel 9
Something went wrong getting user information from Channel 9
Loading User Information from MSDN
Something went wrong getting user information from MSDN
Loading Visual Studio Achievements
Something went wrong getting the Visual Studio Achievements
Right click “Save as…”
Not familiar with Axum? Here's a C9 interview with the Axum team to refresh your memory
(it's a domain specific language for concurrent programming, formerly known as "Maestro", developed by the Parallel Computing Platform team).
Here, Axum PM Josh Phillips walks us through building a simple Axum application in just over 5 minutes. Josh builds a simple “math library” on agents and shows how easy it is with Axum to focus on your code and get parallelism and safety implicitly.
Axum Team Blog: http://blogs.msdn.com/maestroteam
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Oops, something didn't work.
What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in. You need to be signed in to Channel 9 to use this feature.What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in and view them all on your notifications page.sign up for email notifications?
public static int Add(int x, int y)
{
return x + y;
}
is as concurrency safe as this example.
Show me an example that's hard to do with current tools.
Thanks for the feedback. This example was meant to be a five-minutes-or-less taste of what Axum looks like. It's pretty difficult to show any complex concurrency in 5 minutes. Keep your eyes peeled though. They'll be much more coming in the complex department. Networks in Axum will rock your world.
Josh
Axum Team
I am particularly curious about how chatty you can get with these agents before latency suffers. I am also curious to know how much memory allocation is going on behind the scenes to services the agents.
If I was overly critical in my first comment, it comes from prior experience where the examples made a language/tool look really simple. Then as soon as you apply it to a real world problem, the kludge, scaffolding, and other gotchas show their head. Haskell being my most recent disappointment.
I don't mean to suggest that this will be the case with Axum. I am simply curious to see something less trivial.
1) You learn how well Axum can scale to complex concurrent problems (that are realistic in context)
2) You are equipped to provide the Axum team with excellent technical feedback that they can use in evolving the technology
It seems to me that you care, and that's awesome. Code on.
C
I suggest installing the bits and trying some of the samples, which are still meant to be educational rather than realistic.
The messaging overhead is comparable to Erlang, while the memory pressure per agent is close, but not yet close enough to make me happy. Compared threads, the cost per agent is about 0.001 of what a thread requires, as long as you place receives in asynchronous methods (see the WebFetcher sample).
And, unlike some other technoligies that may have disappointed you in the past, we're actively looking for your input. That's why we're getting Axum out there before it's completely baked.
I must say your implementation of channels reminds me of Phil Winterbottom's channels from the old days of playing with Alef and Limbo. Were you guys influenced by either Limbo or Alef?
Regards,
Anthony
Sylvan,
This is such a great and insightful piece of feedback that I now feel inspired to write something up on the Axum blog to elaborate on our thoughts on these topics. I was hoping to not work this weekend, but it will be hard to keep myself from writing something. Please look for something later, possibly before Monday morning.
Niklas Gustafsson
Remove this comment
Remove this thread
close