COSC 2P05
Course Outline

Instructor 1: Michael Winter, Office MCC J323, Office Hours: Mon 10:00am - noon, Wed 02:00pm - 04:00pm, email: mwinter@brocku.ca
Instructor 2: Alex Bailey, Office Hours: by email, email: abailey@brocku.ca


Calendar description

Fundamental concepts of programming languages including syntax, semantics, program translation, virtual machines, control, data types, multi-threading, exception handling and abstraction mechanisms. Introduction to programming paradigms including imperative, applicative, logic and object-oriented.

Lectures, 3 hours per week.

Prerequisite: COSC 2P03 (minimum 60 percent).

Course Outline

Week
Date
Book/Chapt.
Topics
1 Jan 06-10 1,2 Introduction, Evolution of programming languages
2 Jan 13-17 2 Evolution of programming languages
3 Jan 20-24 5, 6 Names, Bindings, Scope, Data types
4 Jan 27-31 6, 7 Data types, Expressions and assignments
5 Feb 03-07 8 Control structures (Midterm 1)
6 Feb 10-14 9, 10 Subprograms
7* Feb 24-28 11 Abstract data type
8 Mar 03-07 12 Object-oriented languages
9 Mar 10-14 13 Concurrency (Midterm 2)
10 Mar 17-21 15 Functional programming languages
11 Mar 24-28 15, 16 Functional programming languages, Logic programming languages
12 Mar 31- Apr 04 16 Logic programming languages, Review
* Feb 17-21 is Reading Week.

Texts

Sebesta, Robert W.: Concepts of Programming Languages (12th edition) Pearson, 2019, ISBN: 9780135102268
Book store link: Textbook COSC 2P05

COSC Home Page
COSC 2P05 Home Page
© M. Winter, 2024