CS 152: Abstractions and Paradigms for Programming (Spring 2016)
Description: Review of the program development process, Issues in program design, Structured programming, Data and control abstractions, Programming with assertions. Reasoning about programs and proving correctness of programs. Ideas behind imperative, applicative, object oriented and logic programming paradigms such as typing, expressions, pure functions, recursion, higher order functions, encapsulation, inheritance, goal satisfaction, backtracking, unification. Some of the ideas behind the implementation of the paradigms. Course to be centered around problems and applications that demonstrate the main themes.
Schedule: Lecture Slot 4
Instructor: Om Damani
Office hours: Monday after class.
Moodle: Slides, Assignments, Solutions, Reference Materals, Newsgroup etc.