CSE 413

Programming Languages and Their Implementation

Credits
3.0
Lead Instructor
Hal Perkins
Textbook
Online reference and tutorial information
Course Description
Basic concepts and implementation strategies for modern functional and object-oriented programming languages such as Scheme and Java. Intended for non-majors. No credit to students who have completed CSE 341 or CSE 401.
Prerequisites
CSE 373.
CE Major Status
None
Course Objectives
Expand our notions of programming, learn basic concepts of programming languages, and gain insight into how languages are implemented.  The main focus of the course will be to study functional and object-oriented programming using Racket (a dialect of Scheme) and Ruby, then explore language implementation techniques, and possibly other languages as time allows.  The final project will be to implement a compiler or interpreter for a small language.
ABET Outcomes
No outcomes registered
Course Topics