Personal Computer News
7th January 1984
Categories: Review: Book
Author: Richard King
Publisher: Prentice-Hall International
Machine: European Machines
Published in Personal Computer News #043
The DIF File
There are some books which really should be on the shelves of any systems or application programmer - and this is one of them.
Though the Data Interchange Format isn't formally accepted as a standard by any major bodies, it has proved popular in the US, and at least over there, is considered to be a 'de facto' standard. However, it hasn't received the attention it should, at least not in Britan. It's obvious that the situation is different in the States, where a large number of programs either use DIF as an external utility or as a means of internal communication.
Part of the reason may be the (relative) lack of availability of the DIF Technical Specification in this country, which has meant that most information has to be gleaned at second or third-hand. Since the matter of interchanging data between different programs is a complex one, and involves many considerations not immediately apparent from examination of Basic listings, further obstacles have been put in its path.
This book, however, explains the whole subject lucidly with plenty of good examples, may of which have clearly been developed in real use. As a bonus, the book gives some very useful hints and tips about how to use the DIF file-saving features of VisiCalc to overcome some of the limitations of the program.
Once case which often comes up, particularly in the early stages of developing a worksheet, is that a formula or value is incorrectly placed, resulting in circular or back-referencing calculations. Moving it is a problem, but by saving the worksheet in parts as DIF and VisiCalc-files, it can be dismantled and correctly re-assembled.
Though DIF is often associated with numeric data, largely as a result of VisiCalc, it also has provision for string data, which makes it ideal for use with database and card-index programs, and this is also well covered.
The most interesting section is on the Special Data Values and User-Definable Items, which allow considerable expansion to the DIF, and suggest some interesting experimental ideas.
A very good book, which makes an important but neglected idea much more approachable. I can heartily recommend this treatise on DIF to any professional or serious amateur programmers.