Computer Language Engineering (SMA 5502)
Offered By: Massachusetts Institute of Technology via MIT OpenCourseWare
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
CompilersStanford 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 Formal Language and Automata Theory- An Application in Compiler Design
Chhattisgarh Swami Vivekanand Technical University via Swayam Formal Language and Automata Theory- An Application in Compiler Design (औपचारिक भाषा और स्वचालित सिद्धांत: कंपाइलर डिज़ाइन में एक अनुप्रयोग)
IGNOU via Swayam