views:

76

answers:

1

I want to write my own network simulator, for fun and for personal challenge. I hope to learn both new programming techniques, and a little bit more about networking. Previous object-oriented attempts ended very quickly, but I've recently downloaded and played with Microsoft's Axum (a new version was released today) and their Concurrency and Co-ordination Runtime. As I come from a very OO dominant background, I had never heard of Actor-oriented programming before; now it seems I've had my head in the sand until Scala and F# brought the paradigm to me.

My questions are: a) is actor-oriented programming a better choice than object-oriented programming for this task, and if so b) where is a good place to start learning actor-oriented design?

+1  A: 

A) Contrary to what the cs academia might want you to believe, all models are tools to be used, not something to constrain yourself to.

B) You will learn by doing it. Might want a less ambitious project for your first go though. Maybe even start by playing around with this Java library since the heavy OO background you come from I assume is java? http://osl.cs.uiuc.edu/af/

RandyMorris
Thanks for the link, there's a lot of reading material and a lot of learning to do. Not sure my question A can be answered objectively in a single post, but it seems to be attracting tumbleweed. I wholeheartedly agree that unwarranted constraints should be avoided, but OO has definitely reached critical mass over the years and it's easier to hire dev support with that background than in AO. I want to identify the problems that AO solves better, and I want to be able to leave an AO design in the laps of developers who can build it (and not just sit scratching the backs of their heads.)
Jono