[Haskell-cafe] Any example of concurrent haskell application?

Martijn van Steenbergen martijn at van.steenbergen.nl
Fri Oct 9 03:56:00 EDT 2009


Daryoush Mehrtash wrote:
> I am trying to learn more about concurrent applications in Haskell by 
> studying an existing a real application source code.   I would very much 
> appreciate if you can recommend an application that you feel has done a 
> good job in implementing a real time application in Haskell.

Yogurt[1], a MUD client, uses two threads: one to process input from the 
server and one to process input from the client. It uses an MVar to 
synchronize. All concurrency is located in module Network.Yogurt.Readline.

Custard[2], a MUD server, uses several threads:
* Server, maintaining MUD state
* one that listens for incoming connections
* per client, one that listens for client input
* per client, one that listens for messages from Server
It uses channels and message passing to synchronize. All concurrency is 
located in module Engine.

[1] http://hackage.haskell.org/package/Yogurt
[2] http://code.google.com/p/custard/

Hope this helps,

Martijn.


More information about the Haskell-Cafe mailing list