In an earlier post I mentioned that one goal of the new introductory curriculum at Carnegie Mellon is to teach parallelism as the general case of computing, rather than an esoteric, specialized subject for advanced students. Many people are incredulous when I tell them this, because it immediately conjures in their mind the myriad complexities…
R. Utterback, K. Agrawal, J. Fineman, and I. Lee. Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures, page 83--94. ACM, (2016)
A. Yoga, S. Nagarakatte, and A. Gupta. Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, page 833--845. ACM, (2016)
J. Protze, M. Schulz, D. Ahn, and M. Müller. Proceedings of the 27th International Symposium on High-Performance Parallel and Distributed Computing, page 144--155. ACM, (2018)
M. Cao, M. Zhang, A. Sengupta, and M. Bond. Proceedings of the 21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, page 20:1--20:13. ACM, (2016)
J. Roemer, K. Genc, and M. Bond. Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation, page 374--389. ACM, (2018)
J. Wang, W. Dou, Y. Gao, C. Gao, F. Qin, K. Yin, and J. Wei. Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering, page 520--531. IEEE Press, (2017)
D. Wu, L. Chen, Y. Zhou, and B. Xu. 2015 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), page 1-10. (October 2015)
S. Fowler, S. Lindley, and P. Wadler. 31st European Conference on Object-Oriented Programming (ECOOP 2017), volume 74 of Leibniz International Proceedings in Informatics (LIPIcs), page 11:1--11:28. Dagstuhl, Germany, Schloss Dagstuhl--Leibniz-Zentrum für Informatik, (2017)