About the Cover: Pascal’s Triangle (Aug, 1978)
This reminds me of XKCD’s Map of Online Communities.There was a time when Pascal seemed like it was the ascendant language, just before C just zoomed on by and took over the world. I remember reading the Inside Macintosh books when I was a kid and thinking, shit, I’m going to have to learn this Pascal thing.
About the Cover
by Carl Helmers
It is rare when one can indulge in one’s prejudices with relative impunity, poking a bit of good humored fun to make a point. The design of the cover, entitled “Pascal’s Triangle” provided just such an opportunity. The cover was executed by Robert Tinney, but the prejudices are all mine and were given to him as a fairly detailed script. The point is that Pascal is here, it is consistent with use by small computers, such as many readers own, and it is available in the form of the UCSD software system at quite a nominal charge above the cost of the hardware required. While today it requires a computer at the high end of the personal computer range of pricing, the utility of the language and advances in both magnetic media and read only memory technology should lower the price of the minimum hardware requirements considerably over the course of the next year or two. With that point, we present “Pascal’s Triangle.”
The primary allegory of the cover is of course the inversion of the “Bermuda Triangle” myth’s theme to show smooth waters. The triangle is an unbounded tri- angular array of buoys numbered with the binomial expansion coefficients. These coefficients are “Pascal’s Triangle” as any high school algebra student will have learned. Pascal’s Triangle on the cover is of course embedded in a matrix of the waters of the FORTRAN Ocean of computer languages, named after the pioneering widely used high level language FORTRAN, and its descendents FORTRAN II, FORTRAN IV, WATFOR, WATFIV and even the mildly reformed RATFOR.
A prominent island graces the bottom of the picture, the Isle of BAL with its rocky and desolate surface. Note the great JCL barrier reef which surrounds the Isle of Bal and borders the Straights of COBOL along the bottom edge of the picture. These dangerous and unstructured reefs have sunk more than one ship on their treacherous shoals, including the good ship SS OS of all encompassing (360 degree) fame. (Much commercial traffic is seen in the sea lanes of the Straights of COBOL.) In the lower right part of the picture where the Straights of COBOL meet the main body of the FORTRAN Ocean, we see a curious fog bank (imagining a view from the deck of a ship in the waters). It is said that this fog bank is always present, hiding the exotic and mysterious jungles of LISP. While unseen by normal mortals, our gods’ eye view of the picture shows the brilliant tropical algorithms, the fabulous nodes growing on trees like in some Eldorado of programming. But who can see brilliance through a fog bank?
Travelling upward (in the picture) through heavy seas we come to the pinnacle, a snow white island rising like an ivory tower out of the surrounding shark infested waters. Here we find the fantastic kingdom of small talk, where great and magical things happen. But alas, just as the impenetrable fog bank around the jungles of LISP hide it from our view, the craggy aloofness of the kingdom of small talk keeps it out of the mainstream of things.
Turning our attention to the lower left part of the picture, we see the famous Floating Point separating the FORTRAN Ocean mainstream from the interactive and weed filled Sea of BASIC.
To all the relative disorder and chaos of the waters of the FORTRAN Ocean and its adjacent coastal features, the smooth, calm infinity of Pascal’s Triangle provides a brilliant contrast. We note vessels ranging from the commercial freighters to pleasure boats to the rafts of hobbyists to the military fighting ships heading for the calm waters of Pascal’s Triangle.
To complete the mythology, we find within Pascal’s Triangle numerous examples of ships enjoying the smooth sailing and untroubled waters.
Is this an adequate picture? Computer languages are like philosophies in many respects, which is to say that the reasons for an enthusiasm are often hard to attribute to anything other than aesthetic grounds. But as in philosophies and religions, conversions do occur from time to time. Very often in today’s microcomputer world, we find the case of the engineer or systems programmer who has been using an assembler (if anything at all) as the first and only software development tool. Such a person will often discover BASIC, FORTRAN, APL, COBOL (yes, even people with engineering backgrounds sometimes see COBOL as a first high level language) or language X. When language X is discovered, the advantages of the high level language technique often become confused with the specific example-and the enthusiasm which comes with the powerful elixir of automated programming aids turns that person into an X language convert with an almost religious fervor.
As the new convert proceeds to use the language, he or she also discovers its inadequacies in detail errors. And the X language devotee starts inventing this or that perfect extension, a new superset of X, which is endowed with even better properties. This particular inventiveness syndrome is most pronounced in compiler implementors since they are in a position to “do something about” the older language by ad hoc implementing personally meaningful extensions when putting a new compiler up.
What has resulted, viewing from the big picture, is a range of languages, each reflecting the context of the group of implementors who are responsible for its creation. Pascal in this global context must be viewed as but another step in that natural sequence of human events.
I personally like Pascal as a method of expressing programs, because of a number of arguments supported by my own prior experience using languages including macroassemblers, BASIC, FORTRAN, PL/I, HAL/S, JOVIAL, XPL and a bit of PL/M.
As a potential user, try a few programs, see if you like the style of expression involved, and if the price is right, that may be the system for you. If you like the arguments presented for Pascal in this issue and by examples in issues to come, by all means express your interest to manufacturers. This issue is a conscious attempt to communicate some of the flavor of Pascal with a spirit of fun and an understanding that even Pascal may not be the be all and end all of computer languages.”