Computer Language Engineering OpenCourseWare: A Free Undergraduate Computer Programming Course by MIT
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:
-
Saint Leo University
Saint Leo University responds quickly to information requests through this site.
Suggested programs:
- BS: Computer Science
- BA: Software Engineering
- BS: Computer Information Systems
- AA: Information Technology
-
Grand Canyon University
Grand Canyon University responds quickly to information requests through this site.
Suggested programs:
- B.S. in Software Development
- B.S. in Information Technology
- B.A. in Digital Design with an Emphasis in Web Design
- B.S. in Applied Technology
- B.S. in Applied Cybersecurity Management
More information about Grand Canyon University
-
Colorado Christian University
Colorado Christian University responds quickly to information requests through this site.
Suggested programs:
- Computer Science, B.S.
- Computer Information Technology, B.S.
- Computer Information Technology - Database Management, B.S.
- Computer Information Technology - Networking, B.S.
- Information Systems Management, B.S.
-
Keiser University
Keiser University responds quickly to information requests through this site.
Suggested programs:
- Associate of Sciences - Information Technology
- Bachelor of Science in Cloud Engineering
- Bachelor of Science in Applied Engineering
- Bachelor of Science in Cybersecurity
More information about Keiser University
-
UMass Global
UMass Global responds quickly to information requests through this site.
Suggested programs:
- BS in Information Technology
- BS in Information Technology (Project Management)
-
Purdue Global
Purdue Global responds quickly to information requests through this site.
Suggested programs:
- BS in Analytics - Software Development Using C#
- BS in Analytics - Software Development Using Java
- BS in Analytics - Software Development Using Python
- BS in Analytics - Software Development Using Web Languages
- BS in Cybersecurity - Software Development Using C#
More information about Purdue Global