CS 305: Concepts of Programming Languages

Fall, 2007/2008

Assoc. Prof. Dr. Brahim Hnich

Location/Time/Contact Information

 

Lecture Room M307; Lecture Times: Wednesdays 8:3011:20

 

      Lecture Room M407; Lecture Times: Fridays 8:3011:20

 

Room 415

Email: brahim.hnich@ieu.edu.tr

Description:

Concepts of Programming Languages provides students with a wide-range in-depth discussion of programming language concepts.  By presenting design issues for various language constructs, examining the design choices for these constructs in some of the most common languages, and critically comparing the design alternatives, the course gives students a solid foundation for understanding the fundamental concepts of programming languages.

 

Objectives

 

Textbooks:

Concepts of Programming Languages.  International Edition 7th Edition by Robert Sebesta

Exams and Grading:

1 Midterm (%40)

Term Project (%20)

1 Final (%40)

Programme and Lecture Notes

 

Week No

Subject

1.                

Introduction & Course Overveiw

Chapter 1 and Chapter 2

1.                

Names, Bindings, Type Checking, and Scopes

Chapter 5

2.                

Pointer Operations, Functional Side Effect,  Short-circut Evaluation, and Assignment Statement

Chapter 6 , Chapter 7

3.                

Subprograms

Chapter 9

4.                

Implementing Subprograms

Chapter 10

5.                

Midterm I

6.                

Abstract data Types and Encapsulation Constructs

Chapter 11

7.                

Support for Object-Oriented Programming

Chapter 12

8.                

Overview of Java

Java

9.                

Concurrency

Chapter 13

10.            

Exception Handling and Event Handling

Chapter 14

11.            

Logic Programming Languages

Chapter 16

12.            

Overview of Constraint Programming

CP

13.            

Summary & Concluding Remarks