YoVDO

Computer Language Engineering (SMA 5502)

Offered By: Massachusetts Institute of Technology via MIT OpenCourseWare

Tags

Compiler Design Courses

Course Description

Overview

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](http://web.mit.edu/sma/) (SMA) programme as course number SMA 5502 (Computer Language Engineering).

Syllabus

  • L1: Course Administration Information and Overview
  • R1: Scanner Parser Project
  • L8: Unoptimized Code Generation
  • L9: Unoptimized Code Generation (cont.)
  • L14: Instruction Scheduling
  • L15: Instruction Scheduling (cont.)
  • L16: Register Allocation
  • L17: Putting it all Together

Taught by

Prof. Saman Amarasinghe and Prof. Martin Rinard

Tags

Related Courses

Compilers
Stanford University via edX
Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course)
Hebrew University of Jerusalem via Coursera
Compiler Design
Indian Institute of Technology, Kharagpur via Swayam
Foundations to Computer Systems Design
Indian Institute of Technology Madras via Swayam
Compiler Design
YouTube