1.Preliminaries

2.Evolution of the Major Programming Languages

3.Syntax and Semantics

4. Lexical and Syntax Analysis

5. Names, Bindings and Scopes

6. Data Types

TOY2

Java

7. Expression and Assignment Statements

8. Statement-Level Control Structures

9. Subprograms

10. Implementing Subprograms

11. Abstract Data Types and Encapsulation constructs

12. Support for Object-Oriented Programming

13. Concurrency

14. Exception, Event Handing

15,16 Functional, Logic Programming Language