Speaking the Same Language:

How Parallel Programs Coordinate and Communicate