Write a Blog >>
ECOOP 2021
Sun 11 - Sat 17 July 2021 Online
co-located with ECOOP and ISSTA 2021
Thu 15 Jul 2021 19:20 - 19:40 at ECOOP 1 - Program Analysis (time band 1) Chair(s): Uday P. Khedker
Fri 16 Jul 2021 02:40 - 03:00 at ECOOP 1 - Program Analysis / Runtimes (time band 2) Chair(s): Werner Dietl

Program families (software product lines) are increasingly adopted by industry for building families of related software systems. A program family offers a set of features (configured options) to control the presence and absence of software functionality. Features in program families are often assigned at compile-time, so their values can only be read at run-time. However, today many program families and application domains demand run-time adaptation, reconfiguration, and post-deployment tuning. Dynamic program families (dynamic software product lines) have emerged as an attempt to handle variability at run-time. Features in dynamic program families can be controlled by ordinary program variables, so reads and writes to them may happen at run-time.

Recently, a decision tree lifted domain for analyzing traditional program families with numerical features has been proposed, in which decision nodes contain linear constraints defined over numerical features and leaf nodes contain analysis properties defined over program variables. Decision nodes partition the configuration space of possible feature values, while leaf nodes provide analysis information corresponding to each partition of the configuration space. As features are statically assigned at compile-time, decision nodes can be added, modified, and deleted only when analyzing read accesses of features. In this work, we extend the decision tree lifted domain so that it can be used to efficiently analyze dynamic program families with numerical features. Since features can now be changed at run-time, decision nodes can be modified when handling read and write accesses of feature variables. For this purpose, we define extended transfer functions for assignments and tests as well as a special widening operator to ensure termination of the lifted analysis. To illustrate the potential of this approach, we have implemented an experimental lifted static analyzer, called DSPLNUM2Analyzer, for inferring numerical invariants of dynamic program families written in C. An empirical evaluation on benchmarks from SV-COMP indicates that our tool is effective and provides a flexible way of adjusting the precision/cost ratio in static analysis of dynamic program families.

Thu 15 Jul

Displayed time zone: Brussels, Copenhagen, Madrid, Paris change

19:00 - 20:00
Program Analysis (time band 1)ECOOP Technical Papers at ECOOP 1
Chair(s): Uday P. Khedker Indian Institute of Technology (IIT) Bombay
19:00
20m
Talk
Lossless, Persisted Summarization of Static Callgraph, Points-To and Data-Flow AnalysisDistinguished Paper
ECOOP Technical Papers
Philipp Dominik Schubert Heinz Nixdorf Institut, Paderborn University, Ben Hermann Technical University Dortmund, Eric Bodden University of Paderborn; Fraunhofer IEM
Link to publication DOI Pre-print Media Attached
19:20
20m
Talk
Lifted Static Analysis of Dynamic Program Families by Abstract Interpretation
ECOOP Technical Papers
Aleksandar S. Dimovski Mother Teresa University, Skopje, Sven Apel Saarland University
DOI
19:40
20m
Talk
Gradual Program Analysis for Null Pointers
ECOOP Technical Papers
Sam Estep Carnegie Mellon University, Jenna DiVincenzo (Wise) Carnegie Mellon University, Jonathan Aldrich Carnegie Mellon University, Éric Tanter University of Chile, Johannes Bader Jane Street, Joshua Sunshine Carnegie Mellon University
DOI Pre-print Media Attached File Attached

Fri 16 Jul

Displayed time zone: Brussels, Copenhagen, Madrid, Paris change

02:00 - 03:20
Program Analysis / Runtimes (time band 2)ECOOP Technical Papers at ECOOP 1
Chair(s): Werner Dietl University of Waterloo
02:00
20m
Talk
Gradual Program Analysis for Null Pointers
ECOOP Technical Papers
Sam Estep Carnegie Mellon University, Jenna DiVincenzo (Wise) Carnegie Mellon University, Jonathan Aldrich Carnegie Mellon University, Éric Tanter University of Chile, Johannes Bader Jane Street, Joshua Sunshine Carnegie Mellon University
DOI Pre-print Media Attached File Attached
02:20
20m
Talk
Best-Effort Lazy Evaluation for Python Software Built On APIs
ECOOP Technical Papers
Guoqiang Zhang North Carolina State University, Xipeng Shen North Carolina State University
DOI
02:40
20m
Talk
Lifted Static Analysis of Dynamic Program Families by Abstract Interpretation
ECOOP Technical Papers
Aleksandar S. Dimovski Mother Teresa University, Skopje, Sven Apel Saarland University
DOI
03:00
20m
Talk
Accelerating Object-Sensitive Pointer Analysis by Exploiting Object Containment and Reachability
ECOOP Technical Papers
Dongjie He University of New South Wales, Jingbo Lu UNSW Sydney, Yaoqing Gao Huawei Canada, Jingling Xue UNSW
DOI Pre-print