geof@imagen.UUCP (Geof Cooper) (09/15/86)
> ... My own suspicion is > that Imagen is afraid of adopting PostScript because they fear .... I am disgusted although perhaps not surprised at the assumption that corporate doublethink or marketing hype is at the root of IMAGEN's and HP's DDL efforts. This assumption comes from quarters which are not without their own measure of intellectual dishonesty (this comment is not restricted to the author of the quotation, above). DDL is a Document Description Language. It was designed after Postscript and Interpress. This allowed its designers to benefit from the mistakes and limitations that were inherent in those languages, and this they did. DDL is a more powerful language than either Postscript or Interpress. Please find, attached, a summary description of DDL, which examines the ways in which this is so. Full, readable, manuals are being produced now, and will be publicly available when they are ready. IMAGEN has never kept any of its languages or protocols secret. The world is now taking notice of DDL, thanks to HP's recent announcement. Many factors are present in a company's choice of a "standard." As an employee of another company, it would be inappropriate for me to comment on how HP made its decision, except to point out that a technical comparison of DDL, Postscript, and Interpress was carried out, and DDL was considered technically superior to its competitors. This is a matter of public record. See HP's press statements. Standards are intended to hold back progress so everyone can make common use of an established technology. Everyone knows why a standard is useful. But it is extremely dangerous to the technical vitality of an industry to rush into a standard before the technology has had time to settle. The technological base has not been laid for a single standard in the laser printing industry. There is no full function printer for either DDL, Postscript, or Interpress in the 100 page per minute range (the Xerox 9700 is the closest thing, and it is not close to supporting full Interpress 3.0). There has been insufficient experience to establish the applicability of these languages to "specialty" functions such as wide-bed plotters, CAE type drawings, color engines, high-speed phototypesetters (ask about the speed of the Linotype postscript machine), and so on. Furthermore, the largest computer manufacturer has yet to decide on a high-functionality language. Does Boeing or GE or even Apple really believe that they can get away with a description language which is NOT the one supported by IBM? In this context, IMAGEN has developed DDL, a language which extends the technical frontiers of the laser printing industry. I admit that business considerations (royalties, visibility, ability to manufactur) have played a part in our work. This is the normal manner of operating a business. But do not begrudge us our intellectual integrity for spoiling the plans of a few stodgy companies who have been mislead by marketing hype in advertisements and trade journals. - Geof Cooper Employee and Stockholder IMAGEN Corporation (speaking as an individual, not as a representative of IMAGEN Corporation) SUMMARY DESCRIPTION OF DDL ========================== DDL is a programmable stack-oriented postfix language. It provides for a binary encoding that is extensible to textual input: a single unique encoding of the language permits both dense binary specification, and readable, easy to transmit, textual representations. Variables (local and global) exist; they may be referenced numerically or assigned textual names. The language has all the "usual" operators and transformations that one sees in Interpress and Postscript. DDL's approach is for a minimal set of primitives that allows for the definition of derived functions in DDL itself. For example, transformations are specified only as full matrices. Commands such as "rotate" or "scale" can be provided in DDL through use of DDL procedures defined in include files or as part of the document itself. A DDL document is divided into a preamble, some number of sections, and a layout portion. The sections may contain one or more "pages," ("images" really, see below) but sections are independent of one another. An interpreter may elect to process sections in any order, or in parallel. A DDL program does not directly generate "pages." Instead, the program generates "images." The layout portion of a DDL program allows for the arbitrary mapping of images to paper. Images may also be linearly scaled to accomodate different layouts. This feature is unique to DDL and extremely useful and powerful. It allows for the trivial processing of single- or multi-page forms. It allows user programs to easily paste pictures into documents. It allows for a simple change to the DDL program to generate two-up, or even signature format [signature format = four images on a page, such that when the document is folded half, it reads as a booklet. Think about the order in which pages are printed]. DDL allows for user selection of both linear and nonlinear scaling of fonts. It is the only description language with this capability. A DDL document is "targeted" for a particular resolution. If the resolution of the printer used matches the target resolution, then bit-for-bit accuracy is guaranteed by the language. Otherwise, the interpreter scales appropriately to the printer's resolution. DDL is the only device independent description language that allows bit-tuning. DDL's imaging model allows for opaque or transparent "colors." Filling is provided for both non-zero winding number and parity fill. DDL provides for the definition of "graphical objects", which are well defined data structures that define a complex object. Graphical objects are recursive. A graphical object is recognized by the interpreter and precompiled, so it is enourmously more efficent to use than a procedure that generates the same output (DDL would allow you to use a procedure if you really wanted to). Imaging of characters is a common usage of graphical objects. DDL supports imaging of tiled textures, gray-level images, and color.