MIT OpenCourseWare
  • OCW home
  • Course List
  • about OCW
  • Help
  • Feedback
  • Support MIT OCW

6.035 Computer Language Engineering (SMA 5502), Fall 2005

Image of a computer screen.
Computer screen. (Photo ©

Highlights of this Course

This course features all of its lecture notes and a selection of videos in the lecture notes section. Separate project assignments are provided in the projects section. In addition, practice quizzes are available in the exams section.

Course Description

6.035 is a course within the department's "Computer Systems and Architecture" concentration. This course analyzes issues associated with the implementation of high-level programming languages. Topics covered include: fundamental concepts, functions, and structures of compilers, basic program optimization techniques, the interaction of theory and practice, and using tools in building software. The course features a multi-person project on design and implementation of a compiler that is written in Java® and generates MIPS executable machine code. This course is worth 8 Engineering Design Points.

This course was also taught as part of the Singapore-MIT Alliance (SMA) programme as course number SMA 5502 (Computer Language Engineering).

Technical Requirements

Special software is required to use some of the files in this course: .rm, .mp3.



Prof. Saman Amarasinghe
Prof. Martin Rinard

Course Meeting Times

Four sessions / week
1 hour / session

One session / week
1 hour / session




Send feedback about OCW or this course.