Course experience report: full-class compiler collaboration

Joe Gibbs Politz, Yousef Alhessi
2021 Proceedings of the 2021 ACM SIGPLAN International Symposium on SPLASH-E  
Compilers are large software systems. In course projects it is often a challenge for students to build a significant compiler on their own with features like memory management, closures, inheritance, and more. We report on our experience splitting a relatively large compiler, with several of these advanced features, among project groups in a graduate compilers course. In addition to allowing students to engage with a larger system than groups would have been able to build on their own, we also
more » ... elieve based on anecdotal feedback that this had positive effects on student morale and community. There were several concrete logistics and content decisions we made that were effective, along with other recommendations and refinements for when we run the course again.
doi:10.1145/3484272.3484961 fatcat:qbriay2afzdc5nrhuejf3465fy