Computer Languages A to Z: ZPL

by Gary L. Ratliff, Sr. (eronstuc)

This series began more than three years ago and three editors past of the PCLINUXOS Magazine with the APL language. It now completes with the ZPL language.

Both of these languages are unique in that APL used a set of non-standard symbols. These were not able to be easily displayed until the development of the screen enabled the character set to become easily available. This was coupled with the use of the UTF set, which defined characters used in virtually every language. ZPL is unique in that it is an array processing language, which uses a method of computation, one which is more understood by scientists.

The language is best understood by reading the text of the language, which is available online as a PDF book. The book’s title is A Programmer’s Guide to ZPL.

This text takes you systematically through the language, and introduces the language with a program, showing the structure of the language:

Here we notice some items which are quite unfamiliar: the concept of the region and the concept of direction. The first chapter fully explains the program.

Chapter 2 shows the concepts  with which most programmers would be familiar. This covers the types of numbers which are used in the language, the form of comments, the size of the variables and the proper form for naming constructions.

The ZPL compiler is shown to compile the ZPL source program into ANSI C, and then use the system’s native C compiler to create the object program. During this series, many of the languages have been shown to actually compile the source into a C language program, such as, for example, the gfortran language.

The difference in that line of thinking is given in an example to show how structured languages, such as C and Fortran, differ in their methods from an array language, such as ZPL.

In the next chapter: (Chapter 3), the text concentrates on the concepts that are unique to the ZPL language.

Once this has been done, the rest of the text explains how to use the language, as illustrated by this example of a statistics application:

Since my orientation is more geared toward the structured computer languages, I found following the material difficult. So my intent is to just let you know that such a language exists. Its home is at the Computing Center of the University of Washington, which was donated by Paul Allen, a co-founder of Microsoft. He reveals in the text of his memoirs: The Idea Man, some of his difficulties with his Microsoft co-founder.

So here we have the alphabet of computer languages, as it has been presented in the pages of The PCLinuxOS Magazine during the last three years. This series started with an article about the APL language, which appeared in the July 2007 issue, and concludes with this article about the ZPL language, appearing in the November 2011 issue. During that time period, we have covered the following computer languages:

APL, Basic, C++, Dylan, Elisp, Fortran, Guile, Haskell, Icon, J, Korn Shell, Lisp, Modula 2, Netlogo, Octave, Pascal, Q, R, S, Tcl, Unicon, Vala and Visual Basic, Watfive, XML, Yorick, ZPL.

The coverage of the ZPL language in Wikipedia mentions that nothing has been added to the language since the what’s new entry in 2004. And this language, like poor Yorick, may be passing away. Computer languages, like spoken or written languages, are born, then may soon become dead languages.

Searching for computer languages, one may learn that thousands are available. In my selections, I tried to pick every language type. And, if available, one which was available using Linux.  As I mentioned in the coverage of XML, one could easily construct an alphabet of just a selection of XML languages.

So if you want to become proficient, you should pick out a language which is to your liking. We have presented examples of the many types of languages. The language C, as it was used to create the Unix system, from which Linux was derived, would be a natural choice.

This language is the basis of the excellent introduction to Linux Programming offered by Wrox: Beginning Linux Programming 4th Edition by Neil Matthew and Richard Stones. It is published by Wiley Publishing Inc.

This text starts with an introduction to programming and explains the uses of creating shell scripts and then proceeds in a systematic manner through the topics of programming using C. The book finishes up with the treatment of using the GUI for programming in Gnome and KDE (which uses the language C++ for all its many applications.) I was able to enter the items for Gnome, but could not find the needed library to allow me to get the KDE items to function.

I hope you have found this series useful. If you missed any of the articles the material is covered in my blog: “My Computer Articles” This can be found at As each language was covered, an item was presented along with a link to the article.

Today, as I write this, I am learning of the passing of Steve Jobs. A great pioneer in computing has passed.