The Best of Creative Computing Volume 1 (published 1976)

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

Reviews of 34 Books on BASIC (A Guide to BASIC Programming: A Time-Sharing Language, by Donald D. Spencer, 1969)

graphic of page

Appendix A, on matrices, is exactly the same as previously, with the addition of
a footnote stating that "the introduction to matrices is based on an unpublished
paper written by David L. Smith, currently a lecturer at the University of
Illinois."

Appendix B, on Additional BASIC Statements, covers some of the same areas as
before; two of the programs that
before had no output, now have one. There are now two pages on TAB and PRINT
USING, with a program that is supposed to print HI three times (but somehow
prints it five times), and a page on RESTORE.

The two new appendixes are on Using Files in BASIC, with five pages on creating
and using files, three programs, and five-plus pages on Using BASIC on a
Mini-Computer, with an 87-line program for the PDP-8/E that simulates the
landing of a lunar rocket, although without output.

The last appendix, on Package Programs, presents four of the six programs from
the first edition, dropping matrix inversion and grade analysis. The linear
programming example uses the same objective function, subject to the same
constraints, but the program is completely different, and produces a much
shorter output, half a page instead of two pages.

The old Selected Bibliography was a single list, two pages long. The new one is
over three pages long, with
several publications for each chapter, except for chapters 3-8, for which there
is one group of five books on BASIC, by Farina, Kemeny & Kurtz, Sass, Sharpe,
and Spencer.

All these changes do little to help this become a unified text, with a feeling
of overall cohesiveness between its various chapters. The disjointedness
persists. The biggest fault is still the sudden and overwhelming presentation of
the entire BASIC repertoire of characters, definitions, statements, and error
messages, after only one short program has been given, thus putting a stone wall
directly in the reader's path. However, the book no longer begins to fall apart
apart by page 13; because of the added material,
the collapse doesn't begin until page 32.

***

6. A Guide to BASIC Programming: A Time-Sharing Language, by Donald D. Spencer.
Pub. Dec. 2, 1969, by Addison-Wesley, Reading, Mass., 216 pages 6 1/2 x 9 1/4,
$6.95 (paperback).

One of the better books, with an easily understood text, many examples,
flowcharts throughout. Rating: B+

This book has many features to recommend it, and only a few drawbacks. There are
many examples of each
new statement, and many flowcharts, just about one for each program. Every
chapter ends in exercises, although
without answers.

Spencer is the only author other than Sass (21) to provide a short history of
time-sharing, starting with the
1961 CTSS at MIT. The first chapter also presents a 15-line program for finding
the roots of a quadratic equation, but with no explanation other than the
mechanics of putting it into the system.

The second chapter, an Introduction to BASIC, is mainly about flowcharting. The
next chapter, on Elements
of BASIC, does get into the language, in a slow but sure way, using only REM and
LET. The fourth chapter, on
Reading and Printing, contains the first complete program, six lines on
determining true annual interest rate, plus five more programs.

Chapter five begins to separate the men from the boys, or rather the high-school
kids from the college students, with one example that uses the summation sigma.
Another example goes off on a tangent by taking up three pages to discuss in
detail the Newton-Raphson method for calculating square roots. Chapter six is on
loops. Chapter seven, on Arrays and Subscripted Variables, contains another
digression, a confusing one on the knight's tour. This may be a practical
application of tables, but in a text as elementary as this, it's too much,
adding little or nothing other than confusion. The only point in including it
seems to be the use of subscripted variables to indicate the path of the tour.

There is a fine chapter on matrices, 16 pages, taking the time to discuss the
subject fully and carefully. Chapter ll is Sample Programs For Study, selected
from a variety of fields, with 17 problems on 45 pages, including Fibonacci
numbers, coordinate geometry, greatest common divisor, compound interest,
satellite orbit (two-dimensional), polynomial evaluation, generating prime
numbers, maze-running, and magic-square generation. The last chapter, Problems
For Reader Solution, has 23 problems, some with flowcharts (but none with
solutions) including mortgage calculation, inventory turnover, number-base
conversion, etc.

The section on references is unique: five pages that list 8 books on BASIC, 13
manufacturers' books on BASIC, 15 on other programming languages, 5 on
programming and computers, etc.

There are five appendixes. The first is on BASIC implementations, a unique chart
showing which of 96 statements are available on each of 14 different timesharing
systems. The second appendix is 7 pages on the
ASR33 Teletype, followed by two pages on General Electric time-sharing commands,
then a five-page glossary,
and a two-page true-false quiz on BASIC.

This is one of the better books, with an easily understood text, many examples,
flowcharts throughout, and many programs. The drawbacks are few: no answers to
the exercises, and wandering off twice (Newton-Raphson, knight's tour). The use
of the summation sigma may actually bother only a few readers who haven't gotten
that
far in mathematics.

The typography is distracting, as the book is not well designed. There are too
many typefaces; page 33, for
instance, contains five different ones, making it a very busy page, with
different fonts for the text, section headings, sample program lines, an actual
program, and italics for formula constants.

***

7. Problem-Solving With the Computer, by Edwin R. Sage. Pub. 1969 by Entelek,
Newburyport, Mass., 244 pages, 7 x 10, $4.95 (paperback).

Very slowly paced, aimed at secondary-school students. Rating: B

The first thing one might notice in this book is the very wide margin, almost
three inches, which is used 47 times alongside programs and flowcharts. If the
margin were reduced to just under an inch, the book could be made almost 30%
narrower.

This is a high-school text, for grades 8 through 12. It teaches by giving a
problem and then discussing the
solution in detail. There is a flowchart for every demonstration problem.

There are eight chapters: BASIC Skills I, BASIC Skills II, A New Look at Numbers
(rounding off, primes, random numbers, etc.), Algebra and the Computer, Geometry
and the Computer, Data (FOR-NEXT, subscripts), Determinants, Approximations.

Sage is one of the very few to discuss debugging with the use of PRINT
statements, and also by longhand, and in detail. He is also the only one to use
the phrase "fall through," and to explain this highly important principle.

There are exercises after the introduction of every new idea, but without
answers. These problems are all purely mathematical, and show little
imagination. The one place where some imagination is used is in introducing
flowcharts, where this is done for the steps involved in making a telephone
call.

Some items are covered only as "Additional Facts" following the summaries at the
ends of the chapters. This
includes SQR and ABS, covered in one sentence each.

In the chapter on Geometry and the Computer, many problems are examined at
length and in great detail. This is

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