Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Nicholas Hollingum

dblp:160/7654 · DBLP profile ↗
← Back
4ranked-venue papers
2as first author
0since 2021 · last 2017
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 3 · 1 first-authorArtificial intelligence and machine learning · 1 · 1 first-authorTheory of computation · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Program analysis · 100%
Theoretical computer science
1 paper
Algorithms and data structures · 100%

Topics — the 3 heaviest of 3, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis › static analysis
pointer analysis
0.212015
Giga-scale exhaustive points-to analysis for Java in under a minute · OOPSLA 2015
Program analysis
static analysis
0.212015
Giga-scale exhaustive points-to analysis for Java in under a minute · OOPSLA 2015
Algorithms and data structures › dynamic algorithms › dynamic graph algorithms
dynamic reachability
0.112015
Giga-scale exhaustive points-to analysis for Java in under a minute · OOPSLA 2015
YearPublicationVenuePosition
2017 Cauliflower: a Solver Generator for Context-Free Language Reachability
abstract
Context-free language reachability (CFL-R) is a fundamental solving vehicle for computing essential compiler optimisations and static program analyses. Unfortunately, solvers for CFL- R encounter both inherently expensive problem formulations and frequent alterations to the underlying formalism. As such, tool designers are forced to create custom-tailored implementations with long development times and limited reusability. A better framework is crucial to facilitate research and development in CFL-R. In this work we present Cauliflower, a CFL-R solver generator, that creates parallel executable C++ code from an input CFL-R rule-based specification. With Cauliflower, developers create working tools rapidly, avoiding lengthy and error-prone manual implementations. Cauliflower’s domain-specific language provides semantic extension including reversal, branch- ing, disconnection and templating. In practical experiments, Cauliflower achieves an average speedup of 1.8x compared with the best general purpose tools, and matches the performance of application-specific tools on many benchmarks.
Nicholas Hollingum, Bernhard Scholz
LPAR1
2016 A Note on the Soundness of Difference Propagation
Jens Dietrich 0001, Nicholas Hollingum, Bernhard Scholz
FTfJP@ECOOP2
2015 Towards a Scalable Framework for Context-Free Language Reachability
Nicholas Hollingum, Bernhard Scholz
CC1
2015 Giga-scale exhaustive points-to analysis for Java in under a minute
abstract
Computing a precise points-to analysis for very large Java programs remains challenging despite the large body of research on points-to analysis. Any approach must solve an underlying dynamic graph reachability problem, for which the best algorithms have near-cubic worst-case runtime complexity, and, hence, previous work does not scale to programs with millions of lines of code. In this work, we present a novel approach for solving the field-sensitive points-to problem for Java with the means of (1) a transitive-closure data-structure, and (2) a pre-computed set of potentially matching load/store pairs to accelerate the fix-point calculation. Experimentation on Java benchmarks validates the superior performance of our approach over the standard context-free language reachability implementations. Our approach computes a points-to index for the OpenJDK with over 1.5 billion tuples in under a minute.
Jens Dietrich 0001, Nicholas Hollingum, Bernhard Scholz
OOPSLA2