Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
PASCAL: programming and problem solving (4th ed.)
Leestma S., Nyhoff L., Macmillan Publishing Co., Inc., Indianapolis, IN, 1993. Type: Book (9780023887314)
Date Reviewed: Aug 1 1995

As far as conventional down-to-earth programming in Pascal is concerned, the material in this book is detailed and extensive. Standard Pascal is presented without missing even a single semicolon. Every chapter is accompanied by general and horizon-expanding comments and valuable programming pointers. Each section has quite a few exercises. The book contains references and detailed comparisons to other versions of Pascal throughout the text and in an extensive appendix.

Chapter 1, “The Computer Science Picture,” is divided into two subchapters, one dealing with the history of computing and one about computer organization. By “the history of computing,” the authors mainly mean the history of hardware. When they refer to electronic computing devices, they mention only American developments. They do not mention other significant events that took place in Britain, Germany, France, and Hungary, which should be included in any fair synopsis of the history of computers.

Chapter 2, “Program Development,” includes problem analysis and specification; program design; coding; verification and validation; software engineering; and social, professional, and ethical issues. The authors introduce the notion of an algorithm, giving an imprecise “definition.” They also provide the classical software engineering view of program verification; for example, in the next chapter, they state emphatically that “programs cannot be considered correct if they have not been tested” (p. 109).

In chapter 3, “Basic Pascal,” the authors remarkably equate problem solving and programming:  “Every  problem processes data of various types” (p. 64). The rest of the chapter treats classical programming in Pascal. Chapter 4, “Structured Programming,” contains sequential structure, including compound statements; the Boolean data type; selection structure, namely the if statement; repetition structure, namely the while statement; and more about program testing and debugging. Chapter 5, “Modular Design,” contains an introduction to procedures and modular design, procedures with parameters, examples of procedures and modular programming, functions, scope rules, and top-down design. Chapter 6, “Data Files,” covers input/output procedures, text files, and databases.

Chapter 7, “Other Control Structures,” addresses the case, for, and repeat-until statements, with examples including numerical simulations. This chapter also includes a detailed discussion of numerical computation; a good introduction to recursion; and a poor comment on AI, in which the recursive solution to the Towers of Hanoi problem is presented as an example.

Chapter 8, “Ordinal Data Types: Enumerated and Subrange,” includes a meek paragraph about data structures and data types, the type (declaration) section, enumerated data types, and subrange data types. Chapter 9, “One-dimensional Arrays,” introduces arrays and discusses (in a limited and misleading way) list processing using one-dimensional arrays. Chapter 10, “Strings,” discusses the string as an abstract data type, a string package for standard Pascal, and the predefined data type string in Turbo and other Pascals.

Chapter 11, “Multidimensional Arrays,” introduces multidimensional arrays, then presents the processing of multidimensional arrays, examples, and applications to numeric computation and computer graphics of the 1960s. Chapter12, “Records,” introduces records and fields. Chapter13, “ADTs and OOP,” treats stacks as a data structure implemented with arrays and records. It includes a reasonable introduction to object-oriented programming in standard Pascal. Chapter 14, “Sets,” contains all the data with examples needed for using the set data type in Pascal.

Chapter 15, “Files,” briefly reviews text files and new information about binary data file processing in Pascal. Chapter 16, “Pointers and Linked Structures,” introduces dynamical data structures and treats in detail linked lists by means of pointers. The book concludes with a section on trees as multiply-linked structures.

As a textbook published in 1993, this work misses a great deal, since it was written in the early 1980s, if not earlier, and only superficially edited for the publication of the fourth edition. In spite of attempts to remodel the book, it is outrageously out of date. The authors fail to mention the entry of computing into education, networking (other than email), and desktop publishing. The PC user is not considered. Over 80 percent of the example programs presented deal with classical automatic data processing (ADP) problems and their classical, often out-of-date, solutions. Computer graphics is presented by means of the old character layout method of the early 1960s.

The book’s title promises something about “problem solving.” It does not contain any serious treatment of this topic. The material presented in the chapters (outside of the exercises) is fully detailed. The book does not leave readers any room for problem solving; all the algorithms referred to in the text are presented explicitly, in full detail, out of the blue. Readers of this book are not expected to develop their own algorithms, only to code them in Pascal. This quaint idea that learning to program in a conventional manner is equivalent to problem solving is pathetic, if not educationally disturbing.

Reviewer:  Y. Shafee Give'on Review #: CR118061
Bookmark and Share
 
Pascal (D.3.2 ... )
 
 
Structured Programming (D.2.2 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Pascal": Date
Programming in Pascal
Dale N., D. C. Heath and Company, Lexington, MA, 1990. Type: Book (9780669200423)
Sep 1 1991
Pascal
Savitch W., Benjamin-Cummings Publ. Co., Inc., Redwood City, CA, 1991. Type: Book (9780805374506)
Sep 1 1991
Structures and abstractions
Salmon W. (ed), Richard D. Irwin, Inc., Burr Ridge, IL, 1991. Type: Book (9780256082739)
May 1 1992
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy