acm-header
Sign In

Communications of the ACM

Latest Research



Designing Plush Toys With a Computer
From Communications of the ACM

Designing Plush Toys With a Computer

We introduce Plushie, an interactive system that allows nonprofessional users to design their own original plush toys. We successfully demonstrated that nonprofessional...

From Communications of the ACM

Technical Perspective: Design Tools For the Rest of Us

There are many who believe we are on the verge of the biggest change in the way products are made since the Industrial...

Predicting Structured Objects with Support Vector Machines
From Communications of the ACM

Predicting Structured Objects with Support Vector Machines

Machine Learning today offers a broad repertoire of methods for classification and regression. But what if we need to predict complex objects like trees, orderings...

From Communications of the ACM

Technical Perspective: Machine Learning For Complex Predictions

Interest in machine learning can be traced back to the early days of computer science. Alan Turing himself conjectured that...

From Communications of the ACM

Declarative Networking

Declarative Networking is a programming methodology that enables developers to concisely specify network protocols and services, which are directly compiled to...

From Communications of the ACM

Technical Perspective: Narrowing the Semantic Gap in Distributed Programming

In science, significant advances are often made when researchers from different communities join forces.

Finding the Frequent Items in Streams of Data
From Communications of the ACM

Finding the Frequent Items in Streams of Data

Many data generation processes can be modeled as data streams. While this data may be archived and indexed within a data warehouse, it is also important to process...

From Communications of the ACM

Technical Perspective: Data Stream Processing - When You Only Get One Look

The database and systems communities have made great progress in developing database systems that allow us to store and query huge amounts of data. Real-time analysis...

Distinct-Value Synopses For Multiset Operations
From Communications of the ACM

Distinct-Value Synopses For Multiset Operations

The task of estimating the number of distinct values (DVs) in a large dataset arises in a wide variety of settings in computer science and elsewhere. We provide...

From Communications of the ACM

Technical Perspective: Relational Query Optimization: Data Management Meets Statistical Estimation

Relational systems have made it possible to query large collections of data in a declarative style through languages such as SQL. There is a key component that...

Spamalytics: An Empirical Analysis of Spam Marketing Conversion
From Communications of the ACM

Spamalytics: An Empirical Analysis of Spam Marketing Conversion

We all receive spam advertisements, but few of us have encountered a person who admits to following through on an offer and making a purchase. And yet, the relentlessness...

From Communications of the ACM

Technical Perspective: They Do Click, Don't They?

You never click on advertisements received in spam or in phishing messages, do you? Nobody does. So, if that is...

Optimistic Parallelism Requires Abstractions
From Communications of the ACM

Optimistic Parallelism Requires Abstractions

Writing software for multicore processors is greatly simplified if we could automatically parallelize sequential programs. Although auto-parallelization has been...

From Communications of the ACM

Technical Perspective: Abstraction For Parallelism

Looking for some new insight into an old problem? The  familiar problem of writing parallel applications and a...

Statistical Analysis of Circuit Timing Using Majorization
From Communications of the ACM

Statistical Analysis of Circuit Timing Using Majorization

Future miniaturization of silicon transistors following Moore's Law may be in jeopardy as it becomes harder to precisely define the behavior and shape of nanoscale...

From Communications of the ACM

Technical Perspective: Where the Chips May Fall

The traditional approach to circuit design has been to build chips that work correctly at extreme-case process...

Does Distributed Development Affect Software Quality?
From Communications of the ACM

Does Distributed Development Affect Software Quality?: An Empirical Case Study of Windows Vista

Existing literature on distributed development in software engineering and other fields discusses various challenges,...

From Communications of the ACM

Technical Perspective: Maintaining Quality in the Face of Distributed Development

It was a problem that should not have taken three weeks to solve. The documentation claimed that if a function was called...

From Communications of the ACM

Formal Verification of a Realistic Compiler

This paper reports on the development and formal verification of CompCert, a compiler from Clight (a large subset of the C programming language) to PowerPC assembly...

From Communications of the ACM

Technical Perspective: A Compiler's Story

In the early 1970s, pioneers like Floyd, Dijkstra, and Hoare argued that programs should be formally specified and proven...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account