BLEG: What are good types for communication protocols? I want abstraction way above the level of (re)connection: protocol combinators and epistemic logic. Something like "conversation" types. NB: Using OCaml, but will happily port from e.g. Haskell if possible.
Session Types are basically what I'm looking for, though ideally, some kind of combinators to simultaneously build session types for both clients and servers.
Read my blog!