Wed 17 Jul 2019 18:00 - 19:30 at Mancy - Poster session

Asynchrony has become an inherent element of JavaScript, as an effort to improve the scalability and performance of modern web applications. To this end, JavaScript provides programmers with a wide range of constructs and features for developing code that performs asynchronous computations, including but not limited to timers, promises, and non-blocking I/O.

However, the data flow imposed by asynchrony is implicit, and not always well-understood by the developers who introduce many asynchrony-related bugs to their programs. Worse, there are few tools and techniques available for analyzing and reasoning about such asynchronous applications. In this work, we address this issue by designing and implementing one of the first static analysis schemes capable of dealing with almost all the asynchronous primitives of JavaScript up to the 7th edition of the ECMAScript specification.

Specifically, we introduce the callback graph, a representation for capturing data flow between asynchronous code. We exploit the callback graph for designing a more precise analysis that respects the execution order between different asynchronous functions. We parameterize our analysis with one novel context-sensitivity flavor, and we end up with multiple analysis variations for building callback graph.

We performed a number of experiments on a set of hand-written and real-world JavaScript programs. Our results show that our analysis can be applied to medium-sized programs achieving 79% precision on average. The findings further suggest that analysis sensitivity is beneficial for the vast majority of the benchmarks. Specifically, it is able to improve precision by up to 28.5%, while it achieves an 88% precision on average without highly sacrificing performance.

Wed 17 Jul

Displayed time zone: Belfast change

18:00 - 19:30
Poster sessionPosters at Mancy
18:00
90m
Poster
MagpieBridge: A General Approach to Integrating Static Analyses into IDEs and EditorsECOOP posterDemonstration
Posters
Linghui Luo Paderborn University, Julian Dolby IBM Research, Eric Bodden Heinz Nixdorf Institut, Paderborn University and Fraunhofer IEM
File Attached
18:00
90m
Poster
A Parallel Spreadsheet Interpreter With Cycle Detection
Posters
Alexander Asp Bock IT University of Copenhagen
18:00
90m
Poster
Specifying I/O using Abstract Nested Hoare Triples in Separation LogicFTfJP posterDemonstration
Posters
Willem Penninckx KU Leuven, Amin Timany imec-Distrinet KU-Leuven, Bart Jacobs KU Leuven
18:00
90m
Poster
Reliable State Machines: A Framework for Programming Reliable Cloud ServicesECOOP posterDemonstration
Posters
Suvam Mukherjee Indian Institute of Science, Nitin John Raj International Institute of Information Technology, Hyderabad, Krishnan Govindraj Microsoft Research, Pantazis Deligiannis Microsoft Research, Chandramouleswaran Ravichandran Microsoft Azure, Akash Lal Microsoft Research India, Aseem Rastogi Microsoft Research, Raja Krishnaswamy Microsoft Azure
18:00
90m
Poster
RML: Runtime Monitoring LanguageVORTEX poster
Posters
Luca Franceschini DIBRIS, University of Genova, Italy
File Attached
18:00
90m
Poster
Precise, Efficient and Secure Just-In-Time Analysis of Java ProgramsAORTA poster
Posters
Manas Thakur IIT Madras, V Krishna Nandivada IIT Madras
18:00
90m
Poster
Fling---A Fluent API GeneratorECOOP poster
Posters
Yossi Gil Technion—Israel Institute of Technology, Ori Roth Technion
File Attached
18:00
90m
Poster
TornadoVM: Dynamic Optimisation of Heterogeneous Java AccelerationAORTA posterDemonstration
Posters
Juan Fumero University of Manchester, UK, Michail Papadimitriou University of Manchester, UK, Christos Kotselidis University of Manchester, UK
File Attached
18:00
90m
Poster
Static Analysis for Asynchronous JavaScript ProgramsECOOP poster
Posters
Thodoris Sotiropoulos Athens University of Economics and Business, Benjamin Livshits Imperial College London, UK
18:00
90m
Poster
To Async or Not to Async: Better Cooperative Multithreading is the Answer
Posters
18:00
90m
Poster
TinyCORP: A Calculus for Context-Oriented Reactive ProgrammingCOP poster
Posters
Tetsuo Kamina Oita University, Tomoyuki Aotani Tokyo Institute of Technology
18:00
90m
Poster
Semantic Patches for Java Program TransformationECOOP posterDemonstration
Posters
Hong Jin Kang School of Information Systems, Singapore Management University, Ferdian Thung , Julia Lawall Inria/LIP6, Gilles Muller LIP6-INRIA/UPMC, Lingxiao Jiang Singapore Management University, David Lo Singapore Management University
18:00
90m
Poster
Static Analysis in Real-World Operational ScenariosDoctoral Symposium posterDemonstration
Posters
Philipp Dominik Schubert Heinz Nixdorf Institut, Paderborn University
File Attached
18:00
90m
Poster
IIFA: Modular Inter-app Intent Information Flow Analysis of Android Applications
Posters
Abhishek Tiwari University of Potsdam, Sascha Groß University of Potsdam, Christian Hammer University of Potsdam
File Attached
18:00
90m
Poster
Towards Language-Parametric Semantic Editor ServicesECOOP posterDemonstration
Posters
Daniel A. A. Pelsmaeker Delft University of Technology, Netherlands, Hendrik van Antwerpen TU Delft, Eelco Visser Delft University of Technology
18:00
90m
Poster
Type-Safe Data Plane Programming with SafeP4ECOOP poster
Posters
Matthias Eichholz , Eric Campbell Cornell University, Nate Foster Cornell University, Guido Salvaneschi TU Darmstadt, Mira Mezini TU Darmstadt, Germany
18:00
90m
Poster
Create your own Interpreter with a JITAORTA poster
Posters
Igor Braga IBM Canada
File Attached
18:00
90m
Poster
Lifting the Burden of Static Analysis Tool Configuration with Rule Graphs
Posters
Lisa Nguyen Quang Do Paderborn University, Eric Bodden Heinz Nixdorf Institut, Paderborn University and Fraunhofer IEM
File Attached
18:00
90m
Poster
NumLin: Linear Types for Linear AlgebraECOOP posterDemonstration
Posters
Dhruv Makwana Unaffiliated, Neel Krishnaswami Computer Laboratory, University of Cambridge
File Attached
18:00
90m
Poster
Towards Resilience Testing of Actor Programs through Test PerturbationsScala poster
Posters
Jonas De Bleser Sofware Languages Lab, Vrije Universiteit Brussel, Coen De Roover Vrije Universiteit Brussel
18:00
90m
Poster
JIT as a Service: Compilation Paradigm for the CloudAORTA poster
Posters
Xiaoli Liang IBM Canada, Daryl Maier IBM Canada
18:00
90m
Poster
Transferring Obligations Through SynchronizationsECOOP posterDemonstration
Posters
Jafar Hamin imec-DistriNet, Depatrmant of Computer Science, KU Leuven, Belgium, Bart Jacobs Radboud University Nijmegen
18:00
90m
Poster
Automated Large-scale Multi-language Dynamic Program Analysis in the WildECOOP poster
Posters
Alex Villazón Universidad Privada Boliviana, Bolivia, Haiyang Sun Università della Svizzera italiana, Andrea Rosà University of Lugano, Switzerland, Eduardo Rosales University of Lugano, Switzerland, Daniele Bonetta Oracle Labs, Isabella Defilippis Universidad Privada Boliviana (UPB), Sergio Oporto Universidad Privada Boliviana (UPB), Walter Binder University of Lugano, Switzerland
18:00
90m
Poster
Garbage-free Abstract Interpretation through Abstract Reference CountingECOOP poster
Posters
Noah Van Es Sofware Languages Lab, Vrije Universiteit Brussel, Quentin Stiévenart Vrije Universiteit Brussel, Belgium, Coen De Roover Vrije Universiteit Brussel
File Attached
18:00
90m
Poster
Finally, a Polymorphic Linear Algebra LanguageECOOP poster
Posters
Amir Shaikhha University of Oxford, Lionel Parreaux EPFL
18:00
90m
Poster
Multiverse Debugging: Non-deterministic Debugging for Non-deterministic ProgramsECOOP posterDemonstration
Posters
Carmen Torres Lopez Vrije Universiteit Brussel, Robbert Gurdeep Singh Universiteit Gent, Belgium, Stefan Marr University of Kent, Elisa Gonzalez Boix Vrije Universiteit Brussel, Belgium, Christophe Scholliers Universiteit Gent, Belgium
18:00
90m
Poster
Lifestate: Event-Driven Protocols and Callback Control FlowECOOP poster
Posters
Shawn Meier University of Colorado, Boulder, Sergio Mover Ecole Polytechnique, Bor-Yuh Evan Chang University of Colorado Boulder
18:00
90m
Poster
Distributed System Development with ScalaLociECOOP poster
Posters
Pascal Weisenburger Technische Universität Darmstadt, Guido Salvaneschi TU Darmstadt
18:00
90m
Poster
Lightweight Software Profiling of Compiled CodeAORTA poster
Posters
Andrew Craik IBM Canada, Rahil Shah IBM Canada, Ben Thomas IBM Canada, Devin Papineau IBM Canada
18:00
90m
Poster
Android App Analysis Query LanguageBenchWork posterDemonstration
Posters
Felix Pauck Paderborn University, Germany
Media Attached
18:00
90m
Poster
DynaSOAr: A Parallel Memory Allocator for OOP on GPUsECOOP poster
Posters
Matthias Springer Tokyo Institute of Technology, Hidehiko Masuhara Tokyo Institute of Technology
18:00
90m
Poster
Godot: All the Benefits of Implicit and Explicit FuturesECOOP poster
Posters
Kiko Fernandez-Reyes Uppsala University, Dave Clarke Uppsala Univ. Sweden and KU Leuvern, Ludovic Henrio CNRS, Einar Broch Johnsen University of Oslo, Tobias Wrigstad Uppsala University
File Attached
18:00
90m
Poster
Deep Static Modeling of invokedynamicECOOP poster
Posters
George Fourtounis University of Athens, Yannis Smaragdakis University of Athens