Sign In

Communications of the ACM

Table of Contents


ACM forum: letters


From Washington

We are entering a new era in very high performance computing that will be dominated by parallel architectured systems. It is critical for the United States to maintain its leadership as this new era, with its broadened applications …

Even no data has a value

Data that are missing, lost, or incomplete can be very significant in certain situations. Programs and languages need to be able to identify and manage such data effectively.

Reflections on software research

Can the circumstances that existed in Bell Labs that nurtured the UNIX project be produced again?

Reflections on trusting trust

To what extent should one trust a statement that a program is free of Trojan horses? Perhaps it is more important to trust the people who wrote the software.

Visibility aspects of programmed dynamic data structures

Unlike static structures, dynamic Pascal-like data structures often suffer visibility problems due to the unrestricted use of the general pointer mechanism. By classifying these structures and identifying the different kinds  …

Pass-algorithms: a user validation scheme based on knowledge of secret algorithms

A superset of the secondary passwords technique, pass-algorithms provide enormous flexibility and ease of implementation and represent an attractive alternative to more costly systems security features and equipment. The method …

Improved interpretation of UNIX-like file names embedded in data

When the data processed by a program span several files, the common practice of including file names as data in some of the files leads to difficulties in moving or sharing that data. In systems using tree structured directories …

The EAS-E application development system: principles and language summary

EAS-E is based on the entity-attribute-set view of system description—a useful formalism for system modeling and planning even when programming is done in languages other than EAS-E.

Training wheels in a user interface

New users of high-function application systems can become frustrated and confused by the errors they make in the early stages of learning. A training interface for a commercial word processor was designed to make typical and  …

The weighted median filter

The median filter is well-known [1, 2]. However, if a user wishes to predefine a set of feature types to remove or retain, the median filter does not necessarily satisfy the requirements. A more general filter, called the Weighted …

Memory occupancy patterns in garbage collection systems

Some programming languages and computer systems use dynamic memory allocation with garbage collection. It would be useful to understand how the utilization of memory depends on the stochastic parameters describing the size and …

Determinants of program repair maintenance requirements

Considerable resources are devoted to the maintenance of programs including that required to correct errors not discovered until after the programs are delivered to the user. A number of factors are believed to affect the occurrence …