Introduction to Programming Languages

Introduction to Programming Languages

By: Arvind Kumar Bansal (author)Paperback

1 - 2 weeks availability

£47.49 RRP £49.99  You save £2.50 (5%) With FREE Saver Delivery

Description

In programming courses, using the different syntax of multiple languages, such as C++, Java, PHP, and Python, for the same abstraction often confuses students new to computer science. Introduction to Programming Languages separates programming language concepts from the restraints of multiple language syntax by discussing the concepts at an abstract level. Designed for a one-semester undergraduate course, this classroom-tested book teaches the principles of programming language design and implementation. It presents: * Common features of programming languages at an abstract level rather than a comparative level * The implementation model and behavior of programming paradigms at abstract levels so that students understand the power and limitations of programming paradigms * Language constructs at a paradigm level * A holistic view of programming language design and behavior To make the book self-contained, the author introduces the necessary concepts of data structures and discrete structures from the perspective of programming language theory. The text covers classical topics, such as syntax and semantics, imperative programming, program structures, information exchange between subprograms, object-oriented programming, logic programming, and functional programming. It also explores newer topics, including dependency analysis, communicating sequential processes, concurrent programming constructs, web and multimedia programming, event-based programming, agent-based programming, synchronous languages, high-productivity programming on massive parallel computers, models for mobile computing, and much more. Along with problems and further reading in each chapter, the book includes in-depth examples and case studies using various languages that help students understand syntax in practical contexts.

Create a review

About Author

Arvind Bansal is a professor of computer science at Kent State University. A member of IEEE and ACM, he is an area editor of Tools with Artificial Intelligence. His research interests include the areas of concurrent logic programming, fault-tolerant agent-based systems, knowledge bases, program analysis, XML-based multimedia languages and systems, bioinformatics, biological computing, and proteomics. He received a PhD in computer science from Case Western Reserve University.

Contents

Introduction MULTITUDE OF PROBLEM DOMAINS MOTIVATION LEARNING OUTCOMES PROGRAM AND COMPONENTS INTEROPERABILI TY OF PROGRAMMING LANGUAGES SOFTWARE DEVELOPMENT CYCLE CRITERIA FOR A GOOD PROGRAMMING LANGUAGE HISTORY OF PROGRAMMING PARADIGMS AND LANGUAGES CLASSIFICATION OF LANGUAGES Background and Fundamental Concepts VON NEUMANN MACHINE DISCRETE STRUCTURES CONCEPTS DATA STRUCTURE CONCEPTS ABSTRACT CONCEPTS IN COMPUTATION Syntax and Semantics INTRODUCTION TO SYNTAX AND SEMANTICS GRAMMARS SYNTAX DIAGRAMS VALIDATING SENTENCE STRUCTURE SEMANTICS Abstractions in Programs and Information Exchange DATA ABSTRACTIONS CONTROL ABSTRACTIONS INFORMATION EXCHANGE PARAMETER PASSING SIDE EFFECTS EXCEPTION HANDLING NONDETERMINISTIC COMPUTATION PROGRAMS AS DATA SOFTWARE REUSE CASE STUDY Implementation Models for Imperative Languages ABSTRACT COMPUTING MACHINE TRANSLATING CONTROL ABSTRACTIONS STATIC ALLOCATION HYBRID ALLOCATION IMPLEMENTING PARAMETER PASSING L OW-LEVEL BEHAVIOR OF RECURSIVE PROCEDURES IMPLEMENTING EXCEPTION HANDLER Dynamic Memory Management HEAP ORGANIZATION ALLOCATION OF DYNAMIC DATA OBJECTS DEALLOCATION OF DYNAMIC DATA OBJECTS FRAGMENTATION GARBAGE COLLECTION-RECYCLING HEAP MEMORY START-AND-STOP GARBAGE COLLECTION INCREMENTAL GARBAGE COLLECTION CONTINUOUS REFE RENCE-COUNT GARBAGE COLLECTION CONCURRENT GARBAGE COLLECTION ISSUES IN GARBAGE COLLE CTION Type Theory A DVANTAGE S OF TYPE DECLARATION NOTION OF TYPE SET OPERATIONS AND STRUCTURED TYPES LIMITATIONS OF TYPE THEORY POLYMORPHISM TYPE SYSTEM IN MODERN PROGRAMMING LANGUAGES TYPE EQUIVALENCE I MPLEMENTATION OF TYPES CASE STUDY Concurrent Programming Paradigm CONCURRENT EXECUTION AND ABSTRACTIONS PROGRAM DEPENDENCY AND AUTOMATIC PARALLELIZATION TASK AND DATA PARALLELISM DISTRIBUTED COMPUTING COMMUNICATING SEQUENTIAL PROCESSES MEMORY MODELS FOR CONCURRENCY CONCURRENT PROGRAMMING CONSTRUCTS CASE STUDY Functional Programming Paradigm EXPRESSIONS EVALUATION OF lambda-EXPRESSIONS FPS-FUNCTIONAL PROGRAMMING SYSTEMS A BSTRACTIONS AND PROGRAMMING IMPLEMENTATION MODELS FOR FUNCTIONAL LANGUAGES INTEGRATION WITH OTHER PROGRAMMING PARADIGMS Logic Programming Paradigm LOGIC PROGRAMMING FUNDAMENTAL S ABSTRACT IMPLEMENTATION MODEL PROGRAMMING USING PROLOG EXTENDING LOGIC PROGRAMMING PARADIGM INTEGRATION WITH OTHER PARADIGMS Object-Oriented Programming Paradigm CLASSES AND OBJECTS CLASS HIERARCHY AND INHERITANCE VISIBILI TY AND INFORMATION EXCHANGE POLYMORPHISM AND TYPE CONVERSION CASE STUDIES IMPLEMENTATION OF OBJECT-ORIENTED LANGUAGES DISTRIBUTED OBJECT-ORIENTED MODELS Web and Multimedia Programming Paradigms CODE AND DATA MOBILITY WEB-BASED PROGRAMMING VIRTUAL MACHINES AND RUN-TIME INTERFACE COMPONENTS OF MULTIMEDIA SYSTEMS MULTIMEDIA PROGRAMMING CONSTRUCTS CASE STUDY Other Programming Paradigms EVENT-BASED PROGRAMMING AGENT-BASED PROGRAMMING HIGH PRODUCTIVITY MASSIVE PARALLEL PROGRAMMING SYNCHRONOUS LANGUAGES Scripting Languages COMPONENTS OF SCRIPTING LANGUAGES ABSTRACTIONS IN SCRIPTING LANGUAGES CASE STUDY Conclusion and Future of Programming Languages EVOLUTION OF PROGRAMMING PARADIGMS AND LANGUAGES EVOLUTION OF IMPLEMENTATION MODELS AND COMPILERS CONSTRUCT DESIGN AND COMPREHENSION FUTURE DEVELOPMENT OF PROGRAMMING LANGUAGES Appendices Bibliography Index A Summary, Assessment, and Further Reading appear at the end of each chapter.

Product Details

  • publication date: 13/01/2014
  • ISBN13: 9781466565142
  • Format: Paperback
  • Number Of Pages: 624
  • ID: 9781466565142
  • weight: 1156
  • ISBN10: 1466565144

Delivery Information

  • Saver Delivery: Yes
  • 1st Class Delivery: Yes
  • Courier Delivery: Yes
  • Store Delivery: Yes

Prices are for internet purchases only. Prices and availability in WHSmith Stores may vary significantly

Close