\centerline{\bf Book Review}
\medskip
\noindent
{\it
PostScript Language Program Design, 
Adobe Systems Incorporated, 226pp, 
Addison-Wesley Publishing Company,
{\sc isbn:} 0 201 14396 8.} 
\smallskip
\noindent
PostScript Language Program Design is designed to
be a companion volume to Adobe's {\it PostScript Reference Manual\/}
and {\it PostScript Cookbook\/}.  The blue covered {\it Cookbook\/} gave a
tutorial covering the main features of \PS\ followed
by a number of example programs, while the red covered
{\it Reference Manual\/} is just that.

 

The green covered {\it PostScript Language Program Design} takes this a stage
further. It is designed for people who are writing large applications that will
generate \PS\ output. It describes how to write efficient \PS\ and says
what to avoid in order to reduce the time taken to print the final document.  The
book assumes that the reader already knows \PS. This is particularly
apparent in the examples which often contain commands that are not described in
the text. For this reason the ``Red'' book is a essential companion when reading
``Green'' book.  Unlike the ``Red'' or ``Blue'' books {\it PostScript Language
System Design} does not include a summary of all \PS\ commands which would
enable the book to stand on its own: this would be useful addition to future
editions.

 

{\it PostScript Language Program Design} is organised into two parts. The first
part deals with how \PS\ works. It treats each feature of the language in
more detail than the ``Red'' book and is quite hard reading but very useful. The
second part of the book deals with techniques. There are chapters on writing
printer emulators as well as on the best way to handle graphics and text from
within large applications. There are also chapters on how to structure generated
\PS\ programs, and how to ensure that they are bug free. In general this
second part is a lot easier to read than the first part of the book.



This book has been produced using a desk top publishing package and this,
unfortunately, shows. There are large gaps between words (very wide indeed
during the Preface). There are signs that it had been written in one order, and
then reordered using an editor. There are several sections that appear out of
place: a glaring example is a paragraph that appears to be introducing Chapter 4
occurs about halfway through Chapter 3! It is also the only book I have ever seen
to have a reference to the index within the index! These are only very minor
points, and should not detract from the books usefulness, but it is a pity that
a book which describes how to write good \PS, and hence professional
looking documents and books, should not take the care to ensure that its own
layout is correct. 



This book is likely to be very useful to anyone writing a \PS\ rear end for
a large application, and this is the audience it is aimed at. It may also be of
some use to those who write small \PS\ programs and who are interested in
the deeper workings of \PS. But for those who just need a working
knowledge then the ``Red'' and ``Blue'' books should be sufficient. The one thing
{\it PostScript Language Program Design} is not is a simple introduction to
\PS. Anyone requiring such an introduction should turn to the ``Blue''
{\it Cookbook\/} or to {\it Understanding PostScript Programming\/} by David A.
Holzgang (Sybex).
\smallskip
\rightline{\sl Brendan Molloy} 

