Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleAugust 2015
Mimic: computing models for opaque code
ESEC/FSE 2015: Proceedings of the 2015 10th Joint Meeting on Foundations of Software EngineeringPages 710–720https://doi.org/10.1145/2786805.2786875Opaque code, which is executable but whose source is unavailable or hard to process, can be problematic in a number of scenarios, such as program analysis. Manual construction of models is often used to handle opaque code, but this process is tedious ...
- research-articleAugust 2015
MemInsight: platform-independent memory debugging for JavaScript
ESEC/FSE 2015: Proceedings of the 2015 10th Joint Meeting on Foundations of Software EngineeringPages 345–356https://doi.org/10.1145/2786805.2786860JavaScript programs often suffer from memory issues that can either hurt performance or eventually cause memory exhaustion. While existing snapshot-based profiling tools can be helpful, the information provided is limited to the coarse granularity at ...
- research-articleJuly 2015
DLint: dynamically checking bad coding practices in JavaScript
ISSTA 2015: Proceedings of the 2015 International Symposium on Software Testing and AnalysisPages 94–105https://doi.org/10.1145/2771783.2771809JavaScript has become one of the most popular programming languages, yet it is known for its suboptimal design. To effectively use JavaScript despite its design flaws, developers try to follow informal code quality rules that help avoid correctness, ...
- opinionJanuary 2015
- research-articleOctober 2014
Translating imperative code to MapReduce
OOPSLA '14: Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & ApplicationsPages 909–927https://doi.org/10.1145/2660193.2660228We present an approach for automatic translation of sequential, imperative code into a parallel MapReduce framework. Automating such a translation is challenging: imperative updates must be translated into a functional MapReduce form in a manner that ...
Also Published in:
ACM SIGPLAN Notices: Volume 49 Issue 10 - ArticleJuly 2014
Effective race detection for event-driven programs (invited talk abstract)
WODA+PERTEA 2014: Proceedings of the 2014 Joint International Workshop on Dynamic Analysis (WODA) and Software and System Performance Testing, Debugging, and Analytics (PERTEA)Page 9https://doi.org/10.1145/2632168.2638831Like shared-memory multi-threaded programs, event-driven programs are susceptible to non-deterministic errors that are hard to reproduce and debug. Mobile application platforms and the web require writing event-driven code, motivating the need for ...
- research-articleOctober 2013
Refactoring with synthesis
OOPSLA '13: Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applicationsPages 339–354https://doi.org/10.1145/2509136.2509544Refactoring has become an integral part of modern software development, with wide support in popular integrated development environments (IDEs). Modern IDEs provide a fixed set of supported refactorings, listed in a refactoring menu. But with IDEs ...
Also Published in:
ACM SIGPLAN Notices: Volume 48 Issue 10 - research-articleOctober 2013
Effective race detection for event-driven programs
OOPSLA '13: Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applicationsPages 151–166https://doi.org/10.1145/2509136.2509538Like shared-memory multi-threaded programs, event-driven programs such as client-side web applications are susceptible to data races that are hard to reproduce and debug. Race detection for such programs is hampered by their pervasive use of ad hoc ...
Also Published in:
ACM SIGPLAN Notices: Volume 48 Issue 10 - research-articleJune 2013
Thresher: precise refutations for heap reachability
PLDI '13: Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 275–286https://doi.org/10.1145/2491956.2462186We present a precise, path-sensitive static analysis for reasoning about heap reachability, that is, whether an object can be reached from another variable or object via pointer dereferences. Precise reachability information is useful for a number of ...
Also Published in:
ACM SIGPLAN Notices: Volume 48 Issue 6 - research-articleJune 2013
Dynamic determinacy analysis
PLDI '13: Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 165–174https://doi.org/10.1145/2491956.2462168We present an analysis for identifying determinate variables and expressions that always have the same value at a given program point. This information can be exploited by client analyses and tools to, e.g., identify dead code or specialize uses of ...
Also Published in:
ACM SIGPLAN Notices: Volume 48 Issue 6 - research-articleMay 2013
Efficient construction of approximate call graphs for JavaScript IDE services
The rapid rise of JavaScript as one of the most popular programming languages of the present day has led to a demand for sophisticated IDE support similar to what is available for Java or C#. However, advanced tooling is hampered by the dynamic nature ...
- chapterJanuary 2013
Alias analysis: beyond the code
Aliasing in Object-Oriented ProgrammingJanuary 2013, Pages 505–506Though impressive advances have been made in the precision and scalabilty of alias analyses over the last 20 years, their applicability to real-world object-oriented programs has actually decreased. The growth in size of standard libraries and ...
- chapterJanuary 2013
Alias analysis for object-oriented programs
Aliasing in Object-Oriented ProgrammingJanuary 2013, Pages 196–232We present a high-level survey of state-of-the-art alias analyses for object-oriented programs, based on a years-long effort developing industrial-strength static analyses for Java. We first present common variants of points-to analysis, including a ...
- ArticleJuly 2012
Alternate and learn: finding witnesses without looking all over
CAV'12: Proceedings of the 24th international conference on Computer Aided VerificationPages 599–615https://doi.org/10.1007/978-3-642-31424-7_42Most symbolic bug detection techniques perform search over the program control flow graph based on either forward symbolic execution or backward weakest preconditions computation. The complexity of determining inter-procedural all-path feasibility makes ...
- research-articleJune 2012
Race detection for web applications
PLDI '12: Proceedings of the 33rd ACM SIGPLAN Conference on Programming Language Design and ImplementationPages 251–262https://doi.org/10.1145/2254064.2254095Modern web pages are becoming increasingly full-featured, and this additional functionality often requires greater use of asynchrony. Unfortunately, this asynchrony can trigger unexpected concurrency errors, even though web page scripts are executed ...
Also Published in:
ACM SIGPLAN Notices: Volume 47 Issue 6 - ArticleJune 2012
Correlation tracking for points-to analysis of javascript
ECOOP'12: Proceedings of the 26th European conference on Object-Oriented ProgrammingPages 435–458https://doi.org/10.1007/978-3-642-31057-7_20JavaScript poses significant challenges for points-to analysis, particularly due to its flexible object model in which object properties can be created and deleted at run-time and accessed via first-class names. These features cause an increase in the ...
- research-articleJune 2012
Predicting your own effort
AAMAS '12: Proceedings of the 11th International Conference on Autonomous Agents and Multiagent Systems - Volume 2Pages 695–702We consider a setting in which a worker and a manager may each have information about the likely completion time of a task, and the worker also affects the completion time by choosing a level of effort. The task itself may further be composed of a set ...
- research-articleOctober 2011
F4F: taint analysis of framework-based web applications
OOPSLA '11: Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applicationsPages 1053–1068https://doi.org/10.1145/2048066.2048145This paper presents F4F (Framework For Frameworks), a system for effective taint analysis of framework-based web applications. Most modern web applications utilize one or more web frameworks, which provide useful abstractions for common functionality. ...
Also Published in:
ACM SIGPLAN Notices: Volume 46 Issue 10