Concepts of Programming Languages, Global Edition (11e) : 9781292100555

Concepts of Programming Languages, Global Edition (11e)

Sebesta
 
Edition
 
11
ISBN
 
9781292100555
ISBN 10
 
1292100559
Published
 
04/12/2015
Published by
 
Pearson Higher Ed USA
Pages
 
800
Format
 
Available on demand
 
Title type
Book + Access Code
$123.99
 
 
Title type
 
$60.00
 
 
Description

For courses in computer programming.

 

Evaluating the Fundamentals of Computer Programming Languages

Concepts of Computer Programming Languages introduces students to the fundamental concepts of computer programming languages and provides them with the tools necessary to evaluate contemporary and future languages. An in-depth discussion of programming language structures, such as syntax and lexical and syntactic analysis, also prepares students to study compiler design.


The 11th Edition maintains an up-to-date discussion on the topic with the removal of outdated languages such as Ada and Fortran. The addition of relevant new topics and examples such as reflection and exception handling in Python and Ruby add to the currency of the text. Through a critical analysis of design issues of various program languages, Concepts of Computer Programming Languages teaches students the essential differences between computing with specific languages.

Table of contents
  • Chapter 1 Preliminaries
  • Chapter 2 Evolution of the Major Programming Languages
  • Chapter 3 Describing Syntax and Semantics
  • Chapter 4 Lexical and Syntax Analysis
  • Chapter 5 Names, Bindings, and Scopes  
  • Chapter 6 Data Types
  • Chapter 7 Expressions and Assignment Statements 
  • Chapter 8 Statement-Level Control Structures
  • Chapter 9 Subprograms
  • Chapter 10 Implementing Subprograms
  • Chapter 11 Abstract Data Types and Encapsulation Constructs
  • Chapter 12 Support for Object-Oriented Programming
  • Chapter 13 Concurrency
  • Chapter 14 Exception Handling
  • Chapter 15 Functional Programming Languages
  • Chapter 16 Logic Programming Languages
New to this edition

UPDATED! The most current information on contemporary computer programming languages

  • REVISED! Much of the discussion on outdated languages Ada and Fortran have been removed, including:
    • Chapter 6 description of Ada’s records, union types, and pointers.
    • Chapter 8 discussion of Ada’s for statement.
    • Chapter 10 example Main_2 has been rewritten from Ada to Javascript.
    • Chapter 11 section on Ada’s abstract data types.
  • REVISED! Chapter 12 has been substantially revised with new sections and paragraphs, including an added a section on reflection with two complete program examples and a table of design choices of common languages that support object-oriented programming.

A historical viewpoint provides context for learning different programming languages

  • Chapter 2 outlines the evolution of various languages to help students get a sense of their histories.
Features & benefits

Concepts of Computer Programming Languages uses the following features to facilitate learning:

 

UPDATED! The most current information on contemporary computer programming languages

  • REVISED! Much of the discussion on outdated languages Ada and Fortran have been removed, including:
    • Chapter 6 description of Ada’s records, union types, and pointers.
    • Chapter 8 discussion of Ada’s for statement.
    • Chapter 10 example Main_2 has been rewritten from Ada to Javascript.
    • Chapter 11 section on Ada’s abstract data types.
  • Chapter 4 discusses the important topics of lexical and syntactical analysis and can stand alone from the rest of the book as its own source material.
  • REVISED! Chapter 12 has been substantially revised with new sections and paragraphs, including an added a section on reflection with two complete program examples and a table of design choices of common languages that support object-oriented programming.
  • Chapters 5-14 discuss in detail the design issues of contemporary programming languages, using specific examples to demonstrate each.
    • Chapter 5 covers the many characteristics of variables.
    • Chapter 6 explains different data types.
    • Chapter 7 discusses expressions and assignment statements.
    • Chapter 8 explains control statements.
    • Chapters 9 and 10 cover subprograms and their implementations.
    • Chapter 11 examines data abstraction facilities.
    • Chapter 12 details language features that support object-oriented programming.
    • Chapter 13 discusses concurrent program units.
    • NEW! Chapter 14 has added a discussion of exception handling in Python and Ruby.
  • Chapters 15 and 16 introduce and explain functional programming and logic programming, two of the most important alternative programming paradigms, with an introduction to and discussion of Scheme, ML, Haskell, and F#, as well as the logic programming language Prolog.

The fundamental concepts of programming languages are taught through detailed examination of specific languages

  • Chapter 3 introduces formal methods for describing the syntax and semantics of programming languages.
  • Chapters 4 and 10  discuss implementation techniques for various language constructs using lexical and syntax analysis and the implementation of subprogram linkage.
  • Coverage of advanced object-oriented topics and languages is integrated throughout.

A historical viewpoint provides context for learning different programming languages

  • NEW! Chapter 2 outlines the evolution of various languages to help students get a sense of their histories.
  • Historical boxes and interviews with James Gosling, Larry Wall, Alan Cooper, Bjarne Stroustrup, and others put the material in context.
  • Valuable historical foundations that set out the origins, purposes, and contributions of the most important languages discussed in the rest of the text are introduced early on.
  • In-depth discussions of the design issues faced by the early versions of relevant languages are presented in later chapters.
Author biography

Robert Sebesta is an Associate Professor Emeritus in the Computer Science Department at the University of Colorado–Colorado Springs. Professor Sebesta received a BS in applied mathematics from the University of Colorado in Boulder and MS and PhD degrees in computer science from Pennsylvania State University. He has taught computer science for more than 40 years. His professional interests are the design and evaluation of programming languages and Web programming.