[Haskell-cafe] What's a thread doing / Erlang-style processes /
Message passing
Joel Reymont
joelr1 at gmail.com
Tue Dec 6 09:12:55 EST 2005
On Dec 6, 2005, at 1:49 PM, Bulat Ziganshin wrote:
> JR> #1 reading messages from a socket and posting to #3,
> JR> #2 reading messages sent by #3 and writing to the socket,
> JR> #3 reading messages sent by #1, processing them and posting to #2.
>
> what you get by dividing this into 3 threads? i think that this have
> meaning ONLY if you then join all socket reading threads together and
> use one select to wait on them all
I get an abstraction of a thread with two STM-based mailboxes.
My workhorse threads don't need to care what is done with the messages
that they generate and where the ones that they are consuming come from.
> JR> | Custom Dynamic -- can't pattern-match on this?
> JR> deriving Show
>
> using "Dynamic" have meaning only if you don't know at compile time
> what
> messsages can be sent. is that really the case?
That is correct. I deliver a "scripting library" and users can create
messages of their own.
> imho, you are think in Erlang style, which is ultimately dynamic and
> run-time oriented.
I think in the style most suitable to my task at hand. I have a variable
number of poker clients that talk to the server. These all run
concurrently
so I'm starting threads for them. They can send/receive messages, so
I added
mailboxes to the threads, etc. Is there anything wrong with this
approach?
Thanks, Joel
--
http://wagerlabs.com/
More information about the Haskell-Cafe
mailing list