acm-header
Sign In

Communications of the ACM

Latest Research



From Communications of the ACM

Technical Perspective: Computing with the Crowd

What kinds of problems can be solved with combined human and machine computation? "AutoMan: A Platform for Integrating Human-Based and Digital Computation," by...

Automan
From Communications of the ACM

Automan: A Platform For Integrating Human-Based and Digital Computation

We introduce AutoMan, the first fully automatic crowdprogramming system.

From Communications of the ACM

Technical Perspective: Veritesting Tackles Path-Explosion Problem

 "Enhancing Symbolic Execution with Veritesting" by Avgerinos et al. proposes an effective technique called veritesting that addresses the scalability limitations...

Enhancing Symbolic Execution with Veritesting
From Communications of the ACM

Enhancing Symbolic Execution with Veritesting

In this article, we present a new technique for generating formulas called veritesting that alternates between static symbolic execution (SSE) and dynamic symbolic...

From Communications of the ACM

Technical Perspective: A Breakthrough in Software Obfuscation

In "Hiding Secrets in Software," Garg et al. construct a "one-way compiler" of the type envisioned by Diffie and Hellman.

Hiding Secrets in Software
From Communications of the ACM

Hiding Secrets in Software: A Cryptographic Approach to Program Obfuscation

Can we hide secrets in software? Can we make programs unintelligible while preserving their functionality? Why would we even want to do this? In this article, we...

From Communications of the ACM

Technical Perspective: Software Is Natural

"On the Naturalness of Software" by Hindle et al. takes an entirely new approach to providing tools to help build software.

On the Naturalness of Software
From Communications of the ACM

On the Naturalness of Software

We begin with the conjecture that most software is natural, with all the attendant constraints and limitations — and thus, like natural language, it is also likely...

From Communications of the ACM

Technical Perspective: Program Synthesis Using Stochastic Techniques

The authors of "Stochastic Program Optimization" have developed a stochastic search technique and applied it to program optimization.

Stochastic Program Optimization
From Communications of the ACM

Stochastic Program Optimization

By encoding constraints of transformation correctness as terms in a cost function, and using a Markov Chain Monte Carlo sampler to explore the space of all possible...

From Communications of the ACM

Technical Perspective: Treating Networks Like Programs

"Software Dataplane Verification" takes existing static checking of networks to a new level by checking the real code in the forwarding path of a Click router using...

Software Dataplane Verification
From Communications of the ACM

Software Dataplane Verification

We present the result of working iteratively on two tasks: designing a domain-specific verification tool for packet-processing software, while trying to identify...

From Communications of the ACM

Technical Perspective: Not Just a Matrix Laboratory Anymore

Mathematics is not difficult to find in Chebfun, the subject of "Computing Numerically with Functions Instead of Numbers."

Computing Numerically with Functions Instead of Numbers
From Communications of the ACM

Computing Numerically with Functions Instead of Numbers

We present the Chebfun system for numerical computation with functions, which is based on a key idea: an analogy of floating-point arithmetic for functions rather...

From Communications of the ACM

Technical Perspective: A Woodworker's Easy Fix

The authors of "Guided Exploration of Physically Valid Shapes for Furniture Design" have found a way to provide the user with instant feedback on how to fix unstable...

Guided Exploration of Physically Valid Shapes For Furniture Design
From Communications of the ACM

Guided Exploration of Physically Valid Shapes For Furniture Design

The authors propose an interactive design framework for the efficient and intuitive exploration of geometrically and physically valid shapes.

From Communications of the ACM

Technical Perspective: The Simplicity of Cache Efficient Functional Algorithms

In "Cache Efficient Functional Algorithms," Blelloch and Harper suggest we analyze the costs of functional algorithms by assuming objects are allocated sequentially...

Cache Efficient Functional Algorithms
From Communications of the ACM

Cache Efficient Functional Algorithms

We present a cost model for analyzing the memory efficiency of algorithms expressed in a simple functional language.

From Communications of the ACM

Technical Perspective: Programming Multicore Computers

"Can Traditional Programming Bridge the Ninja Performance Gap for Parallel Computing Applications" advocates an appealing division of labor between a developer...

Can Traditional Programming Bridge the Ninja Performance Gap For Parallel Computing Applications?
From Communications of the ACM

Can Traditional Programming Bridge the Ninja Performance Gap For Parallel Computing Applications?

Current processor trends of integrating more cores with SIMD units have made it more to extract performance from applications. It is believed that traditional...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account