Programming Languages

Below is the syllabus for Programming Languages:-


Unit-I: Introduction, Syntax, and Semantics

Introduction: A brief history, Characteristics of a good programming language, Programming language translators compiler & interpreters, Elementary data types – data objects, variable & constants, data types, Specification & implementation of elementary data types, Declarations, type checking & type conversions, Assignment & initialization, Numeric data types, enumerations, Booleans & characters.

Syntax & Semantics: Introduction, the general problem of describing syntax, formal method of describing syntax, attribute grammar dynamic semantic.


Unit-II: Structured data objects, Subprograms, and Programmer Defined Data Types

Structured data objects: Structured data objects & data types, specification & implementation of structured data types, Declaration & type checking of data structure, vector & arrays, records Character strings, variable size data structures, Union, pointer & programmer-defined data objects, sets, files.

Subprograms and Programmer Defined Data Types: Evolution of data type concept abstraction, encapsulation & information hiding, Subprograms, type definitions, abstract data types, overloaded subprograms, generic subprograms.


Unit–III: Sequence Control and Data Control

Sequence Control: Implicit & explicit sequence control, sequence control within expressions, sequence control within the statement, Subprogram sequence control: simple call return, recursive subprograms, Exception & exception handlers, coroutines, sequence control. Concurrency – subprogram level concurrency, synchronization through semaphores, monitors & message passing

Data Control: Names & referencing environment, static & dynamic scope, block structure, Local data & local referencing environment, Shared data: dynamic & static scope, Parameter & parameter transmission schemes.


Unit-IV: Storage Management and Programming Languages

Storage Management: Major run-time elements requiring storage, programmer and system controlled storage management & phases, Static storage management, Stack-based storage management, Heap storage management, variable & fixed-size elements.

Programming Languages: Introduction to procedural, non-procedural, structured, logical, functional, and object-oriented programming language, Comparison of C & C++ programming languages.


Text Books:

  1. Terrence Pratt, Marvin V. Zelkowitz, Programming Languages Design & Implementation, Pearson.
  2. Allen Tucker & Robert Noonan, Programming Languages–Principles and Paradigms, Tata McGraw- Hill, 2009.


Reference Books:

  1. Ellis Horowitz, Fundamentals of Programming Languages, Galgotia Publications,
  2. Ghezzi, Programming Languages Concepts, Wiley Publications, 2010.

Below is the link to download Programming Languages notes.

Related Links