Provides the fundamental concepts of various programming language paradigms and the critical design issues related to their utilization. Include syntax and semantics, Name, Bindings, Type Checking, and Scopes, Expressions and Assignment Statements, data type, Statement-Level Control Structures, and subprograms.