Preliminaries, concepts of Programming Language, Tools in computer programming, debugging and testing. Structural programming techniques. (Names, Bindings, and Scopes, Data Types, Expressions and Assignment Statements, Statement-Level Control Structures, Describing Syntax and Semantics, Lexical Analysis, Subprograms and Implement Subprogram, Parameter-Passing, Abstract Data Types and Encapsulation Constructs, Exception Handling and Event Handling ,Support for Object-oriented programming. Programming structures in object-oriented language. Fundamentals of Function Programming Language, Function Programming Language Functional programming in non-functional languages.