full-sessions (hackage): This library defines a Session monad, which provides static checking of safe and consistent use of communication channels according to protocols. It requires almost no type- or term- annotations. Examples inculude a SMTP client and a simple chat client with its own protocol. Alternatives are: the simple-sessions package (http://hackage.haskell.org/package/simple-sessions) and the sessions package  (http://hackage.haskell.org/package/sessions).
Keywords: bsd3|control|library|network