Category theory for computing science