PROGRAMMING FOR REAL APPLICATIONS
Dilithium Software, 16K
This book-cassette package offers a great way to learn programming. Practice and theory are combined. You get a book with a variety of program listings backed up by explanations and theory, then you purchase the cassette which contains the programs listed in the book. Aside from easing the task of program entry, the cassette contains full-fledged programs which might be useful on their own.
Dilithium offers several book-cassette learning tools for various computers. The principle of teaching this way is not new. Many software companies include models and tutorials on disk with their documentation. Educational institutions also use such methods. For learning to program on the Sinclair, however, it’s a first.
Randle Hurley, the author of both the book and the software presents the owner of a TS/ZX with a learning program that is biased towards business applications. In the first chapter, titled “Aims and Assumptions,” he tells of how financial restrictions pushed him to develop programs and to modify his TS/ZX so as to create a true business machine. The ways and means of squeezing every last drop of power out of Sinclair BASIC result from necessity and the author proposes to give you the benefit of his experience. There are nine programs that cover the general gamut of business applications: Cash Handling, Personal Finances, Banking, Bulk Storage, Rank Order, Examination Result Analysis and two versions of Word Handler, a rudimentary word processing program.
Before I get into the pros and cons of this work, I can say that on the whole the program tape and book are worthwhile acquisitions for anyone interested in learning advanced BASIC. They are clear, well-structured and contain a variety of useful information and original approaches to the many problems associated with Timex Sinclair computers. The main restrictions are speed of execution and input-output limitations.
For those who are hell-bent on changing this machine into something useful for serious applications, the general procedure is to buy or make hardware and use machine language for the software. Even with this, it is very difficult to get around the Sinclair logic chip which controls the microprocessor as well as the peripherals. I was certainly intrigued by the authors’ claim to have developed real “workhorses” without leaving BASIC. To prove this, Hurley wrote the fourth chapter of the book using his Word Handler program. All I can say after using it myself is that he is either a masochist or amazingly adept at using his own program.
As a learning tool, this program is excellent and uses several original methods of screen manipulation, memory access and storage. It’s a valiant attempt that doesn’t quite make it. The other programs involving storage and math do not require a constant interactive environment as with word processing and come much closer to the mark. The floating point and string handling routines are the forte of Sinclair BASIC. If we put aside problems of magnetic storage and a membrane keyboard, these programs can be considered “workhorses”. Though this tutorial on BASIC programming will not change your Sinclair into an IBM PC, (which is the impression the advertising leaves), it will help you to exploit the possibilities of Sinclair BASIC to the maximum. The book contains excellent programming tips and a great deal of information about the system. The cassette is a perfect complement to the book.
Programming for Real Applications might be best suited for people like the author: short on cash, longing to put the Sinclair to work and not quite ready for machine language programming. Hopefully, Hurley’s sequel on machine language will be ready soon. If he manages to exploit machine code to the same extent as he does BASIC, we may expect some real “workhorse” programs.