Computer Science 470

Organization of Programming Languages

(Effective Spring 2005)

Prerequisite: CS 320 (Assembler Language) and CS 222 (Programming Concepts and Problem Solving II  
Catalog Description: Syntax and basic characteristics of grammars, Backus-Naur form, language constructs, dynamic and static storage allocation, binding time, interpreted versus compiled languages, lexical analysis, parsing, special purpose languages.
 
Objectives:

The student will:

1. Develop an understanding of the organization of programming languages, especially the run-time behavior of programs.

2. Be introduced to the formal study of programming language specification and analysis.

3. Continue the development of problem solution and programming skills introduced in the introductory courses.

4. Do some case studies of programming languages not necessarily studied in the introductory courses.

Texts: Concepts of Programming Languages, 6th Edition, Robert W. Sebesta, Addison-Wesley, ISBN 0-321-19362-8

Chapter

Title
  Concepts of Programming Languages Periods 
1   Preliminaries 2
2   Evolution of the Major Programming Languages 2
3   Describing Syntax and Semantics (1-3) 3
4   Lexical and Syntax Analysis (1-5) 3

 5

  Names, Bindings, Type Checking and Scopes

4
6   Data Types 4
7   Expressions and the Assignment Statement 4
 8   Statement Level Control Structures 4
 9   Subprograms 4
 10   Implementing Subprograms 4
 11   Abstract Data Types and Encapsulation Constructs 3
12   Support for Object Oriented Programming 2
   

 Total:

39 
   

 Tests

3
   

 Total

42 
       
     Other topics as time permits Concurrency, Exception Handling etc.