The effect of programming team structures on programming tasks
Software Engineering and Programming Languages
Using encryption for authentication in large networks of computers
Detection of logical errors in decision table programs
Reverse path forwarding of broadcast packets
Abstract data types and software validation
Optimizing decision trees through heuristically guided search
An example of hierarchical design and proof
A linear sieve algorithm for finding prime numbers
A simply extended and modified batch environment graphical system (SEMBEGS)
Distributed processes: a concurrent programming concept
A simple recovery-only procedure for simple precedence parsers
On-the-fly garbage collection: an exercise in cooperation
Performance evaluation of highly concurrent computers by deterministic simulation
Systems design education: a gaming approach
Median split trees: a fast lookup technique for frequently occuring keys
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