Communicating sequential processes
Software Engineering and Programming Languages
Feedback coupled resource allocation policies in the multiprogramming-multiprocessor computer system
On the complexity of computing the measure of ∪[ai,bi]
Interpolation search—a log logN search
Time, clocks, and the ordering of events in a distributed system
Proving the correctness of heuristically optimized code
An English language question answering system for a large relational database
An algorithm for reasoning about equality
A selective traversal algorithm for binary search trees
Automatic error recovery for LR parsers
General equations for idealized CPU-I/O overlap configurations
Performance of rollback recovery systems under intermittent failures
Characteristics of application software maintenance
Analyses of deterministic parsing algorithms
Some basic determinants of computer programming productivity
Automated welfare client-tracking and service integration: the political economy of computing
Test data as an aid in proving program correctness
An interference matching technique for inducing abstractions
Incorporation of units into programming languages
Automatic data structure selection: an example and overview
Shape the Future of Computing
ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.
Get InvolvedCommunications of the ACM (CACM) is now a fully Open Access publication.
By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.
Learn More