CMPE 326

Course Code & Number
CMPE 326
Course Title
Concepts of Programming Languages
Level
BS
Credit Hours/ ECTS Credits
(3+0+0) 3 TEDU Credits, 5 ECTS Credits
Year of Study:
Junior
Semester:
Spring
Type of Course:
Compulsory
Mode of Delivery:
Face-to-face
Language of Instruction:
English
Pre-requisite / Co-requisite::
Pre-requisites: CMPE 211 OR CMPE 114
Co-requisites: NONE
Catalog Description
Fundamental programming language concepts, pointer arithmetic, dynamic memory allocation, strongly and dynamically typed languages, subprograms and parameter passing methods, abstract data types, encapsulation.
Course Objectives

This course aims to explore fundamental programming language concepts, including activation records, pointers, pointer arithmetic, dynamic memory allocation, and the distinctions between strongly and dynamically typed languages. Additionally, students will delve into the intricacies of subprograms, how subprograms interact, and various parameter passing methods. Through theoretical discussions, practical exercises, and hands-on programming assignments, students will develop proficiency in applying these concepts to solve real-world programming challenges.

Course Learning Outcomes

Upon successful completion of this course, students will be able to:

  1. Recognize basic programming language concepts and design issues,
  2. Relate various attributes of variables to programming languages,
  3. Apply arithmetic operations to pointers and dynamic memory allocation,
  4. Explain how information is passed among subprograms via various types of parameter passing,
  5. Discuss design decisions made on various programming languages,
  6. Use functional programming paradigm via side-effect-free functions and composition.
Course Coordinator:
Dr. Venera Adanova