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.