Skip to content

Principles of Programming Languages

Overview

POPL is meant as a precursor for Compiler Construction. This course takes you through the design of programming languages and programming grammars. It also covers programming paradigms like functional programming (LISP, logic programming (Prolog) and C++. You will also learn the various data structures and ideas involved in the backend of these languages such as activation records, tail recursion, etc.

Prerequisites

This course is a prerequisite for:

This course has the following prerequisites:

Textbooks

Title Author(s) Edition
Introduction to Programming Languages Arvind Kumar Bansal 5th (2014)
Fundamentals of Programming Languages Ellis Horowitz 2nd (1984)
Programming Languages : Principles and Practice Kenneth C. Louden & Kenneth A. Lambert 3rd (2011)
Programming Language Design Concepts David A. Watt & William Findlay 2nd (2004)
Concepts of Programming Languages Robert W. Sebesta 11th (2016)
Compilers : Principles, Techniques & Tools Alfred V. Aho, Monica S. Lam, Ravi Sethi & Jeffrey D. Ullman 2nd (2007)

Videos

Websites