The Best of Creative Computing Volume 1 (published 1976)

Page 306 << PREVIOUS >> NEXT Jump to page:
Go to contents Go to thumbnails

Reviews of 34 Books on BASIC

graphic of page

chapters on BASIC.

Chapter 9, on Computer Software, goes into the different levels of programming
languages. There are some very good sections on system programmers, application
programmers, and programming systems.

Appendix B, 20 pages on Techniques of Flowcharting, includes an entire page
showing a table of USASI Working Groups, X3 Series. Why? The coverage of
flowcharting is very thorough, although it is nearly all taken up with symbols
and their meanings, and only two flowcharts are shown.

Appendix E covers Some General Application Programs: chi-square, T-test,
correlation analysis, matrix inversion, linear programming, grade analysis. Much
too much in an elementary text; the linear program is almost 300 lines long.

The Selected Bibliography lists 50 books and other publications, on a variety of
computer subjects, from biomedical programs to business-data programming.

The last item in the book is a 12-page glossary. The inside covers contain a
synopsis of BASIC definitions, functions and statements.

The preface calls this "an integrated approach to teaching computing."
Disjointed is a better word, as there are too many tangents and space-fillers.
The very simple is next to the very complex, all too dizzyingly often. There are
some very good parts, making this a good source book for a teacher, or perhaps
as a second or third book, or for browsing. But not as a first book, either for
learning about BASIC or about computers, for the solitary reader.

The second edition is essentially the same as the first, except that it is now
in hardcover instead of paperback, the entire book has been reset with different
typefaces, and the text reworded and expanded (from 262 to 352 pages), with two
new chapters (model building, programming languages), the appendix on
flowcharting turned into a chapter, the three chapters on BASIC commands
reworked into four chapters on BASIC statements, and two new appendixes added.

As an example of the rewording, the first sentence of the preface in the first
edition is: "Computing no longer belongs to an 'esoteric cult.'" In the second
edition: "Computing is no longer the sole province of an 'esoteric cult.'" And
so on, with slightly different words but the same content, in the same paragraph
groupings, for the rest of the chapter.

The first chapter was previously an "introduction" and was about the advantages
of using computers, with some specific applications; now it is "problem solving
and algorithms" and is mainly about defining the objective, formulating a
solution, and carrying it out, with several examples, such as calculating the
volume of a cube, preparing Boston baked beans, and preparing a payroll.

The second chapter, on flowcharting, was previously an appendix, and this time
omits the entirely superfluous chart of USASI Working Groups, X3 Series.
Previously, there were mostly symbols and only two flowcharts; now there are six
flowcharts, for making Boston baked beans, digging a hole, determining whether a
number is prime, etc.

Chapter 3, on BASIC elements, starts almost exactly the same as chapter 2 in the
first edition. The first example is on interest; the second edition inserts a
few sentences showing by exactly how much the principal would increase for
several years, before presenting a formula for determining interest, along with
a flowchart. The same programs are presented in both editions, with basically
the same text.

Chapter 4, on concepts and definitions, is almost the same as before,
bewildering to the beginner, with all the definitions and statements presented
at once, along with the same 35 statements containing errors.

The three chapters on BASIC "commands" are turned into four chapters, by taking
GOTO from one chapter and IF-THEN from another, to make a single new chapter.
INPUT is added to the first of these four chapters, along with a small drawing
to illustrate a data stack.

New page 52 shows that the second edition was designed with less care than the
first. It is now crowded, with a typeface that seems rather loud when compared
with the simpler and more elegant type of the first edition, page 30. However,
the new type is larger, and thus easier to read.

A figure has been added in the section on PRINT, to show a page divided into
five print zones, each 15 columns wide.

Two pages have been added to the FOR/NEXT section, to illustrate looping in
greater detail, with a program that sums five numbers, and a table to show the
"contents of memory cells during execution of FOR/NEXT loop." A second
illustration has been added to show legal nested loops, and there is now one to
show illegal nested loops.

The coverage of DIM is increased by two pages, by rewriting and expanding the
text around the same programs and flowcharts, and adding a page with a chart
that shows "contents of memory cells during execution of sort program." New
pages 96 to 106 run exactly parallel with old pages 62 to 72, with the same
figures, and almost the same text.

The random-number function is explained much better now, instead of with only
sentence; three and a half pages have been added, with a coin-flipping
simulation program and flowchart, a discussion of uniform distribution, etc.

Under GOSUB/ RETURN, two figures have been added to show pictorially the use of
subroutines and of nested subroutines.

The time-sharing simulation program is expanded, with a longer program and more
complex flowchart, although the program is not nicely indented into related
groups of lines as was the old one.

The new application chapter on model building is written in a stiff and highly
formal manner. Two deterministic models are presented: automobile parts
economic-order-quantity (with a 13-line program) and land investment (with a
25-line program not sufficiently explained by the three sentences discussing the
fairly complex program and flowchart); this last is more confusing than a
helpful example would be. The stochastic simulation models involve a queuing
problem (at a car wash), decision trees (introducing a product), with long
programs: 77 lines for car wash, with only two sentences of explanation and no
flowchart; a long, seven-page explanation of the decision-tree problem, with
three trees, a long flowchart with four subroutine charts, and a 115-line
program, with only a paragraph of explanation.

The chapter on the computer simulation model is expanded by "specifying in BASIC
the major parts of the computer model," and lengthening the program by adding
DATA statements and showing an output of the program.

The chapter on computer software adds a flowchart showing the translation
process, a table giving the IBM 360/370 Operating Systems Summary, and a table
with the name and type of operating system used on twelve computers from eight
manufacturers, from the Burroughs B 5500 to the Xerox Sigma 5/7. Much of this
chapter has been rewritten, reshuffled, and expanded. Where the first edition
was about system programmers, application programmers and the computer process,
the second is about language processors, operating systems, and the technical
services group, and covers system and application programmers in five sentences.
Some material is repeated, with changes, such as the portion on programming
systems. There is a completely new section, on control programs, service
programs, and on the eight types of operating systems developed "to date." There
is even a note on the "unbundling of IBM."

Chapter 13, on programming languages, is an enlargement of a portion of the old
chapter on software. Only one figure is from the first edition, showing the
levels of programming languages. The new material consists of a page each on
FORTRAN, COBOL, PL/1, BASIC, ALGOL, and RPG. However, the only examples of these
are in the figure taken from the first edition, which is a program showing a
simple loop operation written in binary, hexadecimal, assembly language, and
four of the high-level languages. The pages on the six languages are informative
as to their origins, but tell much too little about the languages themselves.

306

Page 306 << PREVIOUS >> NEXT Jump to page:
Go to contents Go to thumbnails