Stephen N. Zilles

Learn More
The motivation behind the work in very-high-level languages is to ease the programming task by providing the programmer with a language containing primitives or abstractions suitable to his problem area. The programmer is then able to spend his effort in the right place; he concentrates on solving his problem, and the resulting program will be more reliable(More)
The main purposes in writing this paper are to discuss the importance of formal specifications and to survey a number of promising specification techniques. The role of formal specifications both in proofs of program correctness, and in programming methodologies leading to programs which are correct by construction, is explained. Some criteria are(More)
Simplification is a central and basic operation in the manipulation of mathematical expressions. Indeed, much of the tedious algebra that plagues scientists and engineers involves the time-consuming application of simplifying transformations to unwieldly mathematical expressions. It seems obvious, conceptually, that some simplifying transformations can be(More)
Programming languages, database systems and artificial intelligence systems all have the notion that entities can be classified into <italic>types</italic>. As might be expected, however, the usage of the notion of type is not the same throughout or even within these areas. In this paper, I propose a notion of typing that is derived from work on programming(More)
Escher, named after the Dutch artist M. C. Escher, is a graphics language designed to support applications for composing complex, publishing quality documents for high resolution printers and displays. These documents may consist of images, text, and graphics (collectively called graphic elements). In Eseher, graphic elements are represented by typed(More)
methods of interacting with a system graphically. This paper examines existing graphical support and lists requirements for high-level support ofgraphical interaction. The architecture of a prototype system with high-level support for graphical interaction is presented. This includes database support for manipulating graphical data and device-independent(More)