Academics
  /  
Courses
  /  
Descriptions
COMP_SCI 396, 496: Systems Programming in Rust


VIEW ALL COURSE TIMES AND SESSIONS

Prerequisites

Instructor permission only: https://forms.gle/kwTdui2mp54HU5vA9

Description

Modern, safe programming languages such as Java and Python have become increasingly accepted for application-level programming, but for systems programming, which often requires precise, low-level control of system resources, programmers still turn to C and C++. The new programming language Rust, under development by Mozilla, promises the best of both worlds: the type safety of Java with the speed and expressiveness of C++. Through discussions, lectures, and programming exercises, students will learn how to program in Rust and to use its resource ownership model effectively. Rust is especially well suited for our particular focus, concurrent programming, so students will use Rust as a vehicle for exploring both classic concurrency problems and more contemporary concerns.