In "Hiding Secrets in Software," Garg et al. construct a "one-way compiler" of the type envisioned by Diffie and Hellman.Boaz Barak From Communications of the ACM | May 2016
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...Sanjam Garg, Craig Gentry, Shai Halevi, Mariana Raykova, Amit Sahai, Brent Waters From Communications of the ACM | May 2016
"On the Naturalness of Software" by Hindle et al. takes an entirely new approach to providing tools to help build software.Gail C. Murphy From Communications of the ACM | May 2016
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...Abram Hindle, Earl T. Barr, Mark Gabel, Zhendong Su, Premkumar Devanbu From Communications of the ACM | May 2016
The authors of "Stochastic Program Optimization" have developed a stochastic search technique and applied it to program optimization.
Sumit Gulwani From Communications of the ACM | February 2016
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...Eric Schkufza, Rahul Sharma, Alex Aiken From Communications of the ACM | February 2016
"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...George Varghese From Communications of the ACM | November 2015
We present the result of working iteratively on two tasks: designing a domain-specific verification tool for packet-processing software, while trying to identify...Mihai Dobrescu, Katerina Argyraki From Communications of the ACM | November 2015
Mathematics is not difficult to find in Chebfun, the subject of "Computing Numerically with Functions Instead of Numbers."
Cleve Moler From Communications of the ACM | October 2015
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...Lloyd N. Trefethen From Communications of the ACM | October 2015
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...Marc Alexa From Communications of the ACM | September 2015
The authors propose an interactive design framework for the efficient and intuitive exploration of geometrically and physically valid shapes.Nobuyuki Umentani, Takeo Igarashi, Niloy J. Mitra From Communications of the ACM | September 2015
In "Cache Efficient Functional Algorithms," Blelloch and Harper suggest we analyze the costs of functional algorithms by assuming objects are allocated sequentially...William D. Clinger From Communications of the ACM | July 2015
We present a cost model for analyzing the memory efficiency of algorithms expressed in a simple functional language.Guy E. Blelloch, Robert Harper From Communications of the ACM | July 2015
"Can Traditional Programming Bridge the Ninja Performance Gap for Parallel Computing Applications" advocates an appealing division of labor between a developer...James Larus From Communications of the ACM | May 2015
Current processor trends of integrating more cores with SIMD units have made it more to extract performance from applications. It is believed that traditional...Nadathur Satish, Changkyu Kim, Jatin Chhugani, Hideki Saito, Rakesh Krishnaiyer, Mikhail Smelyanskiy, Milind Girkar, Pradeep Dubey From Communications of the ACM | May 2015
As the equivalence problem is essential in many applications, we need algorithms that avoid the worst-case complexity as often as possible. In "Hacking Nondeterminism...Thomas A. Henzinger, Jean-François Raskin From Communications of the ACM | February 2015
We introduce bisimulation up to congruence as a technique for proving language equivalence of nondeterministic finite automata.Filippo Bonchi, Damien Pous From Communications of the ACM | February 2015
As GPUs have become mainstream parallel processing engines, many applications targeting GPUs now have data locality more amenable to traditional caching. The...Stephen W. Keckler From Communications of the ACM | December 2014
This paper studies the effect of accelerating highly parallel workloads with significant locality on a massively multithreaded GPU.Timothy G. Rogers, Mike O'Connor, Tor M. Aamodt From Communications of the ACM | December 2014