Sign In

Communications of the ACM

Table of Contents


President's letter

ACM forum

From Washington

Programming pearls: associative arrays

Toward automating the software-development cycle

Knowledge-intensive rather than labor-intensive processes are being advanced to spur programming productivity.

On time and space decomposition of complex structures

Models of large and complex systems can often be reduced to smaller sub-models, for easier analysis, by a process known as decomposition. Certain criteria for successful decompositions can be established.

Computing programs in small colleges

This Summary Report of The ACM Small College Task Force outlines resources, courses, and problems for small colleges developing degree programs in computing.

Data compression using static Huffman code-decode tables

Both static and dynamic Huffman coding techniques are applied to test data consisting of 530 source programs in four different languages. The results indicate that, for small files, a savings of 22-91 percent in compression can …

A generalized user interface for applications programs (II)

A display-screen management system for user interaction with an arbitrary application program is simple enough so that the end user controls the dialogue and screens yet powerful enough to provide for user specification of screen …

Natural language with discrete speech as a mode for human-to-machine

A voice interactive natural language system, which allows users to solve problems with spoken English commands, has been constructed. The system utilizes a commercially available discrete speech recognizer which requires that …

A randomized protocol for signing contracts

Randomized protocols for signing contracts, certified mail, and flipping a coin are presented. The protocols use a 1-out-of-2 oblivious transfer subprotocol which is axiomatically defined.The 1-out-of-2 oblivious transfer allows …