Compiler algorithm language (CAL) is a standard imperative language in the style of Pascal. The authors claim that it is particularly suited to compiler writing because it provides sets as a built-in data type. Unfortunately, CAL does not support either tuples or records--two of the three data types that the authors say are needed for compiler algorithms.
The paper consists primarily of a terse, bullet-point summary of the constructs of CAL, plus very short descriptions of a compiler, an interpreter, and a Web-based system for using CAL. No references or uniform resource locators (URLs) are given for any of this material.
There is no justification for the design choices represented by CAL. The authors claim that “a large number of programmers in the compiler community” agreed “that CAL had a rich feature set and that the system was very useful for expressing algorithms which which [sic] used sets and set operations.” They do not attempt to support this claim.
This paper read like a report in an undergraduate programming languages class, showing little understanding and providing little useful information.