
hello, I don't think I have meat enough to make a proposition but at least I would like to give a heads up. I find the current network I/O to be very hard to use for anything more complicated like a server. Recently I ended up tossing out all networking into C through FFI which works but is very inconvenient. The problem is that the API does not support exceptions in a very good manner but rather seems to have been written for very simple programs for an "ideal world": * Timeouts are messy to implement * Blocking is hard to avoid if FFI is used concurrently (requires system threads) * I do not know how well haskell scales compared to traditional languages like C with select() but this is am important aspect I guess the most reasonable solution (doesn't break current programs) is a new lower level interface that has been better planned to play well with threads and FFI. since these topics are already on your table, I think it would be good timing to look over the sockets interface. - Johan Henriksson