db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
%T Communicating Haskell Processes: Composable Explicit Concurrency Using Monads db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
%A Neil C.C. Brown db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
%E Peter H. Welch, S. Stepney, F.A.C Polack, Frederick R. M. Barnes, Alistair A. McEwan, G. S. Stiles, Jan F. Broenink, Adam T. Sampson %B Communicating Process Architectures 2008 %X Writing concurrent programs in languages that lack explicit support for concurrency can often be awkward and difficult. Haskell\[rs]s monads provide a way to explicitly specify sequence and effects in a functional language, and monadic combinators allow composition of monadic actions, for example via parallelism and choice — two core aspects of Communicating Sequential Processes (CSP).We show how the use of these combinators, and being able to express processes as first\-class types (monadic actions) allow for easy and elegant programming of process\-oriented concurrency in a new CSP library for Haskell: Communicating Haskell Processes.