COVID-19 Update: We are currently shipping orders daily. However, due to transit disruptions in some geographies, deliveries may be delayed. To provide all customers with timely access to content, we are offering 50% off Science and Technology Print & eBook bundle options. Terms & conditions.
Programming Language Structures - 1st Edition - ISBN: 9780125282604, 9781483264875

Programming Language Structures

1st Edition

Authors: Elliott I. Organick Alexandra I. Forsythe Robert P. Plummer
eBook ISBN: 9781483264875
Imprint: Academic Press
Published Date: 1st January 1978
Page Count: 678
Sales tax will be calculated at check-out Price includes VAT/GST
Price includes VAT/GST

Institutional Subscription

Secure Checkout

Personal information is secured with SSL technology.

Free Shipping

Free global shipping
No minimum order.


Programming Language Structures deals with the structures of programming languages and introduces the reader to five important programming languages: Algol, Fortran, Lisp, Snobol, and Pascal. The fundamental similarities and differences among these languages are discussed. A unifying framework is constructed that can be used to study the structure of other languages, such as Cobol, PL/I, and APL. Several of the tools and methodologies needed to construct large programs are also considered.

Comprised of 10 chapters, this book begins with a summary of the relevant concepts and principles about algorithms, flowcharts, and computation that a student is expected to know from the first course. The discussion then turns to the semantics of procedure and function call as well as argument-parameter matching with various kinds of parameters; recursion and its relation to tree traversal; syntax formalism for context-free languages; and ALGOL 60 and block structuring. Case study programs are presented to reinforce the reader's understanding of ALGOL 60 and Fortran semantics. The remaining chapters deal with Lisp, Snobol, and Pascal.

This monograph is intended for working programmers and students in computer science who have an interest in the subject of programming.

Table of Contents

Part One

1 Basic Concepts

1-1 Introduction

1-2 Flowcharts for Structured Programming

1-3 A Computer Model

1-4 Procedures and Environments

1-5 Global and Local Variables

1-6 The State of the MC

1-7 References and Suggestions for Further Reading

2 Interfacing Procedures

2-1 Introduction

2-2 Reference Parameters

2-3 Independence and Interchangeability of Procedures

2-4 Automating Protection of Arguments

2-5 Expressions as Arguments in a Procedure Call

2-6 Function Procedures

2-7 Name Parameters

2-8 Parameters That Stand for Procedures or Functions

2-9 References and Suggestions for Further Reading

3 Recursion

3-1 Introduction

3-2 Additional Examples

3-3 Tree Traversal and Recursion

3-4 Binary Tree Traversal

3-5 Symbolic Differentiation—An Application of Binary Tree Traversal

3-6 The Searching of Arbitrary Tree Structures

3-7 References and Suggestions for Future Reading

4 Syntax Formalism

4-1 Introduction

4-2 The BNF Notation

4-3 Syntax Charts

4-4 References and Suggestions for Further Reading

Part Two. Syntax and Semantics of Several Major Programming Languages

5 Algol

5-1 Introduction

5-2 Syntactic Structure of Algol-Like Languages

5-3 Syntactic Structure of Algol 60

5-4 Syntax of Algol Declarations and Statements

5-5 Semantics of Algol Blocks

5-6 Semantics of Algol Procedures

5-7 Case Studies—Two Elementary Examples

5-8 Case Studies of Recursive Functions—Two Examples

5-9 Name Parameters Matched to Expressions

5-10 Parameters That Are Procedures

5-11 Own Identifiers in Algol

5-12 References and Suggestions for Further Reading

6 Fortran

6-1 Introduction

6-2 Overview of Fortran Syntax and Semantics

6-3 Global Variables in Fortran

6-4 Syntax of Individual Fortran Statements and Program Units

6-5 Case Study

6-6 New Developments in Fortran

6-7 Additional Case Studies

6-8 Input/Output in Fortran

6-9 A Brief Comparison of Algol and Fortran

6-10 References and Suggestions for Further Reading

7 Lisp

7-1 Introduction

7-2 Data Objects in Lisp

7-3 Storage Structures for S-Expressions

7-4 The Five Basic Lisp Functions

7-5 Avoiding Evaluation of Arguments: The Use of the Quote

7-6 The Lisp Interpreter

7-7 Overview of Lisp Syntax and Semantics

7-8 The Syntax of Lisp and RLisp

7-9 Predefined Functions of Lisp

7-10 Arithmetic Operations in Lisp

7-11 Case Studies

7-12 Function Arguments and Procedure Parameters

7-13 Case Study 4: A Program for Symbolic Differentiation

7-14 Achieving the Effect of Name Parameters in Lisp

7-15 References and Suggestions for Further Reading

8 Snobol

8-1 Introduction

8-2 A Flowchart Language for String Processing Operations

8-3 Snobol Syntax

8-4 Storage Structures for Variables

8-5 Syntax and Semantics of Procedure Declarations and Calls

8-6 Snobol Case Study: Symbolic Differentiation

8-7 Simulating Reference Parameters in Snobol

8-8 Conversion from One Data Type to Another

8-9 Defining and Using New Data Types

8-10 Defining the Primitive Functions of Lisp in Snobol

8-11 Tables and Arrays in Snobol

8-12 A Fortran Preprocessor in Snobol

8-13 References and Suggestions for Further Reading

9 Multisequence Algorithms

9-1 Introduction

9-2 Two Types of Multisequencing: Asynchronous Tasks and Coroutines

9-3 Case Study for Asynchronous Tasking

9-4 Case Studies for Coroutine Tasks

9-5 References and Suggestions for Further Reading

10 Pascal

10-1 Introduction

10-2 Primitive Data Types

10-3 Structured Data Types

10-4 Program Structure

10-5 Constructs for Structured Programming

10-6 Parameter Specification and Treatment

10-7 Input/Output

10-8 Case Study: The Four-Color Problem

10-9 References and Suggestions for Further Reading



Answers to Selected Exercises



No. of pages:
© Academic Press 1978
1st January 1978
Academic Press
eBook ISBN:

About the Authors

Elliott I. Organick

Alexandra I. Forsythe

Robert P. Plummer

Ratings and Reviews