CS 164: Programming Languages and Compilers (Spring 2012, UC Berkeley). Instructor: Professor Rastislav Bodik.

0

1

September 26, 2023

English

English [CC]

Description

This course introduces what programmers need to know about programming languages. The design of modern programming languages. Principles and techniques of scanning, parsing, semantic analysis, and code generation. Implementation of compilers, interpreters, and assemblers. Overview of run-time organization and error handling.

Course Curriculum

  • Lecture 01 – Why Take CS164? Unlimited
  • Lecture 02 – Unit Conversion Calculator Unlimited
  • Lecture 03 – Growing the Language Unlimited
  • Lecture 04 – Building Control Abstractions with Coroutines Unlimited
  • Lecture 05 – Implementing Coroutines Unlimited
  • Lecture 06 – Logic Programming Unlimited
  • Lecture 07 – Implementing Prolog Interpreter Unlimited
  • Lecture 08 – Parsers Unlimited
  • Lecture 09 – Syntax-Directed Translation Unlimited
  • Lecture 10 – Regular Expressions Unlimited
  • Lecture 11 – How to Implement Small Languages Unlimited
  • Lecture 12 – Small Languages in the Real World; Ideas for the Final Project Unlimited
  • Lecture 13 – Natural Language Interfaces Unlimited
  • Lecture 14 – Data Abstraction Unlimited
  • Lecture 15 – Static Types for OO Languages Unlimited
  • Lecture 16 – Unification Static Types Unlimited
  • Lecture 17 – Flow Analysis Unlimited
  • Lecture 19 – Lifting Events with Arrows Unlimited
  • Lecture 20 – Directing JavaScript with Arrows Unlimited
  • Lecture 21 – Reactive Programming with Rx Unlimited
  • Lecture 24 – Subverting a Type System; Hiding Exploit in Compilers Unlimited

About the instructor

5 5

Instructor Rating

6

Reviews

4637

Courses

24183

Students

Profile Photo
OpenCoursa
Accessible Education for Everyone
OpenCoursa is a free online learning platform dedicated to providing high-quality education to learners worldwide. With courses across a wide range of subjects, we empower individuals to gain new skills and knowledge at no cost. Our mission is to make education accessible to everyone, offering flexible learning opportunities for personal and professional growth.
We are an educational and skills marketplace to accommodate the needs of skills enhancement and free equal education across the globe to the millions. We are bringing courses and trainings every single day for our users. We welcome everyone woth all ages, all background to learn. There is so much available to learn and deliver to the people.
FREE

Hours of videos

583 years, 3 months

Units & Quizzes

Unlimited Lifetime access

Access on mobile app

Certificate of Completion