Language shapes thought; for CS 40 years, software systems and some of their research challenges have been defined by the C language. Memory-based security vulnerabilities, in particular, have remained a threat. While the Rust language provides memory safety with similar performance to C, its very different programming model and steep learning curve made replacing decades of C engineering too labor-intensive. CS 340R is a project-centric course that examines how the Rust programming language can be used to replace existing vulnerable C/C++ code with modern coding agents. The course will focus on the classes of C/C++ software architectures that are difficult to replace with Rust and why.
3 units · Letter or Credit/No Credit
Language shapes thought; for 40 years, software systems and some of their research challenges have been defined by the C language. Memory-based security vulnerabilities, in particular, have remained a threat. While the Rust language provides memory safety with similar performance to C, its very different programming model and steep learning curve made replacing decades of C engineering too labor-intensive. CS340R is a project-centric course that examines how the Rust programming language can be used to replace existing vulnerable C/C++ code with modern coding agents. The course will focus on the classes of C/C++ software architectures that are difficult to replace with Rust and why.
Offered in Spring 2027 at Stanford University.