Archive | 2019

From Theory to Systems: A Grounded Approach to Programming Language Education

 

Abstract


I present a new approach to teaching a graduate-level programming languages course focused on using systems programming ideas and languages like WebAssembly and Rust to motivate PL theory. Drawing on students prior experience with low-level languages, the course shows how type systems and PL theory are used to avoid tricky real-world errors that students encounter in practice. I reflect on the curricular design and lessons learned from two years of teaching at Stanford, showing that integrating systems ideas can provide students a more grounded and enjoyable education in programming languages. The curriculum, course notes, and assignments are freely available: this http URL

Volume None
Pages 4:1-4:9
DOI 10.4230/LIPIcs.SNAPL.2019.4
Language English
Journal None

Full Text