Writing a concurrent UDP server in Haskell (stackoverflow.com)