Second Coursework for the Parallel Programming Languages and Systems course at the University of Edinburgh.