Theory and Practice of Concurrency