CS351 - Programming Paradigms

This course consists of 24 lectures and 12 lab practicals.
The goal of the course is to teach the theory behind programming languages via a number of different paradigms.
The course will involve a history of programming language concepts alongside a detailed look at the constituent features of languages including, but not limited to:
Scopes, Types, Control Flow and Data Abstraction.
These ideas will be backed up with concrete examples, both in Lectures and Labs from Functional Programming Languages, Logical Programming Languages,
Object-Oriented Langauges and ``Glue'' (scripting) Languages.
Lectures are on Monday from 2-3PM in CS2 and Thursday from 10-11AM in CS2.
Labs are on Thursdays from 2-4PM in Lab 4.

The recommended text for this course is Programming Langauge Pragmatics 2nd. Ed. written by Michael L. Scott.



Lectures
Lecture 1 Lecture 2 Lecture 3 Lecture 4 Lecture 5 Lecture 6 Lecture 7 Lecture 8 Lecture 9 Lecture 10 Lecture 11 Lecture 12 Lecture 13 Lecture 14
Labs
Lab 1 Lab 2 Lab 3 Lab 6 Lab 7 Lab 8 Lab 9

Sample Question Sample Questions

Exam Results Exam Results