Concurrency and computation : practice & experience (Wiley, 2001)