Proceedings of the fourth ACM SIGPLAN symposium on Principles and practice of parallel programming