CSC345 – Programming Language Concepts and Paradigms
3 Credit Hours
Instructor: Dr. Richard Wyatt, Associate Professor of Computer Science
Text book, title, author, and year
Other Supplemental Materials
Papers by: Paul Graham, C A R Hoare, Paul Hadak and Mark Jones, John Backus, Dana Scott.
Specific course information
brief description of the content of the course (catalog description)
An examination of the conceptual underpinning of programming languages and of the paradigms into which they fall. Topics will be drawn from those comprising the field of programming language such as abstraction, bindings, concurrency, design, encapsulation, history, representation, storage, and types. Programming projects will focus on languages within the functional, logic, and object-oriented paradigms — such as Common Lisp, ML, Prolog, CLOS — rather than the familiar imperative paradigm.
prerequisites or co-requisites
Prerequisite: CSC 220 (Foundations of Computer Science) and CSC 241 (Data Structures & Algorithms).
indicate whether a required, elective, or selected elective course in the program
specific outcomes of instruction Students will be able to:
explicitly indicate which of the student outcomes listed in Criterion 3 or any other
outcomes are addressed by the course.
Course addresses Student Outcomes (a), (b), (c), and (i).