Computer Language Engineering OpenCourseWare: A Free Undergraduate Computer Programming Course by MIT

Published Jan 31, 2009

RSS Feed

Learn how to design and implement a compiler to translate high-level source code into executable programs through 'Computer Language Engineering,' a free OpenCourseWare offered through the Massachusetts Institute of Technology (MIT). This online undergraduate program from the Electrical Engineering and Computer Science department was designed for students in the institute's computer systems and architecture concentration.

Computer Language Engineering: Course Specifics

Degree Level Free Audio Video Downloads
Undergraduate Yes Yes Yes Yes

Lectures/Notes Study Materials Tests/Quizzes
Yes Yes No

Computer Language Engineering: Course Description

Students utilizing this free OpenCourseWare offered by MIT will learn to build a compiler from scratch. This includes constructing the scanner, parser, semantic checker, code generator and data-flow and instruction optimizers. The resulting software will generate MIPS executable code from a Java script. Throughout the compiler-building process, students will study the basic concepts, uses and structures of compilers while learning techniques for program optimization. They also will be introduced to the various tools used to build software. To best understand the course material, students should have a background in software engineering and be proficient in Java programming language. MIT Professors Saman Amarasinghe and Martin Rinard lead this undergraduate class, which is a program of the MIT Department of Electrical Engineering and Computer Science. Special software is required, and a simplified Chinese translation of the course is available.

A list of readings; notes, videos and audio recordings from lectures; practice quizzes; project specifications; and other related resources are available for free online. If you're interested in taking this course, visit the Computer Language Engineering course page.

Featured School Choices: