Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Beginning COBOL for programmers
Coughlan M., Apress, Berkeley, CA, 2014. 588 pp. Type: Book (978-1-430262-53-4)
Date Reviewed: Aug 28 2014

A new book on common business-oriented language (COBOL) programming? You’re kidding, right? Pundits, particularly academics, have been heralding the death of COBOL for at least 30 years now. Regardless of the claims of its impending doom, many of the world’s largest financial and business systems continue to rely on the billions of lines of debugged and smoothly running COBOL code.

COBOL was developed by a US government-sponsored committee, the Conference on Data Systems Languages (CODASYL). The specifications for the language were completed just before Christmas of 1959. Coincidentally, my family’s Christmas tree that year is one of my earliest childhood memories. By the end of the following year, the National Aeronautics and Space Administration (NASA) had selected the seven men for its Mercury program, the Russians had tested the Vostok rocket that would put the first man in space, and COBOL compilers were up and running. And they still are. Over the past few years, the demand for COBOL programmers has far exceeded supply. Coughlan believes that including knowledge of COBOL in a resume will be a competitive advantage for prospective programmers. If you are a programmer, but haven’t yet written in COBOL, then this may be the book for you.

Chapter 1 is an introduction, providing a brief historical background and discussing the unusual characteristics (by modern standards) of this language. In chapter 2, the author elaborates on the idiosyncrasies of COBOL. The structure and organization of a COBOL program, with its rigid hierarchy in particular, are explained and illustrated with simple examples. Chapter 3 explores the categories of data used in COBOL, and introduces COBOL’s interesting approach to data declaration and manipulation.

With the background now covered, chapter 4 introduces the procedure division that contains the code to manipulate data. Keyboard input, screen output, and basic arithmetic operations are introduced. The next two chapters cover control structures. Selection structures (for example, the if statement) are covered in chapter 5, and iteration structures (for example, the perform verb) in chapter 6. As a business-oriented language, COBOL exists largely to manipulate large volumes of external data stored in files. Chapter 7 introduces COBOL’s sequential (that is, serial) file operations, and chapter 8 covers more complex serial file processing operations. The concepts of fixed and variable length records are introduced.

Chapter 9 looks in detail at formatting data for output to produce readable printed reports. Sequential file processing is explored in chapter 10. After a brief introduction to the various types of sequential files, nontrivial tasks such as using record fields to control processing (known as control-break processing) and updating records (that is, writing to files) are covered. Chapter 11 discusses how to create and manipulate tabular data, tables being COBOL’s equivalent to arrays in other programming languages.

In chapter 12, the author explores operations with advanced data declaration clauses such as redefines, renames, and usage. This chapter also discusses the important problems inherent in using floating-point arithmetic for financial calculations and why COBOL is so well suited for processing financial transactions. Chapter 13 covers the indexing and searching of tables, and introduces variable-length tables. Chapter 14 returns to file processing, covering COBOL’s sort and merge operations, and chapter 15 looks at COBOL’s string-manipulation and date-manipulation functions.

Large computer systems are not typically written as a single monolithic program, but consist of a main program linked to many independently compiled subprograms. Chapter 16 discusses how to create, link, call, and move data between subprograms in COBOL. Chapter 17 introduces COBOL’s direct access file systems: indexed and relative files. Once a unique advantage to programming in COBOL, direct access files have now largely been replaced by database products. Programming with all three COBOL file types (that is, sequential, indexed, and relative) is discussed and compared.

Chapter 18 looks at COBOL Report Writer and shows how quite complex printed reports can be generated with surprisingly few lines of code. Lastly, chapter 19 introduces the International Organization for Standardization (ISO) 2002 OO-COBOL, not so much to describe object-oriented programming in OO-COBOL (although that is covered) but to examine the improved structured programming, module strength, and module coupling introduced in OO-COBOL that correct the shortcomings of earlier versions.

The book is aimed at readers with an existing knowledge of programming principles. It is not an introduction to programming, but rather an introduction to COBOL for programmers. Each chapter concludes with a useful chapter summary and list of references. Programming exercises (with their solutions) also accompany most chapters. The source code is available online, and the simple examples in early chapters compiled cleanly with my copy of OpenCOBOL. Since chapters do tend to rely on material introduced in earlier chapters, a sequential progression is advised for newcomers to COBOL. The detailed table of contents and good index, however, also make the book useful as a language reference.

There are many other (generally older) books available on COBOL. Most are written to teach programming using COBOL. In contrast, Coughlin’s aim is to introduce COBOL to already proficient programmers, something that he does quite well.

More reviews about this item: Amazon

Reviewer:  David B. Henderson Review #: CR142676 (1412-1008)
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
COBOL (D.3.2 ... )
 
 
General (D.1.0 )
 
Would you recommend this review?
yes
no
Other reviews under "COBOL": Date
COBOL on a PC: a new perspective on a language and its performance
Jalics P. Communications of the ACM 30(2): 142-154, 1987. Type: Article
Sep 1 1987
Application programming and file processing in COBOL
Uckan Y., D. C. Heath and Company, Lexington, MA, 1992. Type: Book (9780669165708)
Dec 1 1993
Advanced ANSI COBOL with structured programming (2nd ed.)
Brown G. (ed), John Wiley & Sons, Inc., New York, NY, 1992. Type: Book (9780471547860)
Apr 1 1993
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