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.