Last modified: 2023-01-26
This is a course page of
David Casperson
You are here: homeSemestersFall 2018CPSC 320
Associate Professor
Computer Science
University of Northern British Columbia

CPSC 320 — Programming Languages — Fall 2021

A grade of C or better in cpsc 242 and cpsc 200; or permission of instructor.

This page summarises information about CPSC 320.

Covid Information

Timely information related to Covid 19 measures and course delivery may be posted here from time to time. See also here.


Because not all students will be able to attend classes at the beginning of the semester, lectures will be recorded, then posted later to

Fall 2021 classes are on campus! Masks in public spaces, including classrooms, are mandatory. See the official University page, here.
Breaking News

Important information will be posted here from time to time.

Web page created.

Students in this course who, because of a disability, may have a need for special academic accommodations should discuss this with the instructor, or contact the Access Resource Centre located in the Teaching & Learning Building in Room 10-1048.

David Casperson; Office: T&L 10-2080; Telephone1(250)960-6672; e-mailDavid.Casperson; (more contact information …)
Administrative Assistant
Felicity EDZERZA; Telephone1(250)960-6490; ;
Rooms and Hours

(Click for David’s schedule.) M W F  17:30–18:20. Room: 5-176. Office hours have tentatively been scheduled for M W 14:00–15:00, but may be re-arranged based on student schedules.

Course Content
This course is a general introduction to programming languages. It covers the fundamental concepts, evolution, design principles, and techniques for specifying syntax and semantics, data types, memory models, control structures, name binding, abstraction mechanisms, parameter passing, programming paradigms, and pragmatic evaluation of programming languages. Specific languages are addressed mainly through student presentations and laboratory work.
  • Required: R. W. Sebesta Programming Languages, ed. 11 or 12, Pearson.
  • Lecture slides posted on the website.
  • Reading list posted on the website.
  • Self-directed Web and Library search for literature on specific languages.
Handout Dates
Language presentations
Each student team (normally 2–3 people) selects a different programming language approved by the course instructor and organizes a hands-on tutorial session in the lab. The presentation should include enough tutorial material for the class to actively participate. It must highlight the important characterisitcs of the
Grading Scheme and Dates:
First ClassWed, Sep 08
Thanksgiving Mon, Oct 11
Last Drop Day Fri, Oct 29
Midterm I Fri, Oct 15 25%
Remembrance DayMon, Nov 11
Midterm IIMon, Nov 22 25%
Last ClassMon, Dec 06
Language Presentation 20%
Class Participation 10%
Homework & Quizzes 20%
Home page Semesters Site Map
go back Fall 2021 go forward
2023-09 other links

CPSC 200 [Other years]
CPSC 320 [Other years]
David’s Schedule

UNBC Undergraduate Calendar