Demo Data from EDBT 2026 / reviewers in the wild / expert
Shu-yu Guo
dblp:04/6975
· DBLP profile ↗
5ranked-venue papers
1as first author
0since 2021 · last 2020
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 5 · 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
3 papers |
Concurrent programming · 44% Programming languages and type systems · 37% Program verification · 7% |
Topics — the 8 heaviest of 9, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems
language semantics |
0.4 | 1 | 2020 | Repairing and mechanising the JavaScript relaxed memory model · PLDI 2020 |
Concurrent programming
memory models |
0.4 | 1 | 2020 | Repairing and mechanising the JavaScript relaxed memory model · PLDI 2020 |
Concurrent programming › memory models
weak memory models |
0.4 | 1 | 2020 | Repairing and mechanising the JavaScript relaxed memory model · PLDI 2020 |
Programming languages and type systems › type inference
dynamic type inference |
0.1 | 1 | 2012 | Fast and precise hybrid type inference for JavaScript · PLDI 2012 |
Programming languages and type systems
type inference |
0.1 | 1 | 2012 | Fast and precise hybrid type inference for JavaScript · PLDI 2012 |
Program verification
mechanized verification |
0.1 | 1 | 2020 | Repairing and mechanising the JavaScript relaxed memory model · PLDI 2020 |
Compilers and program optimization › compiler correctness
compiler optimization correctness |
0.1 | 1 | 2011 | The essence of compiling with traces · POPL 2011 |
Runtime systems and virtual machines › dynamic compilation
just-in-time compilation |
0.1 | 1 | 2011 | The essence of compiling with traces · POPL 2011 |
Methods — techniques the papers use, named apart from their topics
mechanization · 0.4axiomatic memory model · 0.4run-time type barriers · 0.1points-to analysis · 0.1operational semantics · 0.1bisimulation · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2020 | Repairing and mechanising the JavaScript relaxed memory modelabstractModern JavaScript includes the SharedArrayBuffer feature, which provides access to true shared memory concurrency. SharedArrayBuffers are simple linear buffers of bytes, and the JavaScript specification defines an axiomatic relaxed memory model to describe their behaviour. While this model is heavily based on the C/C++11 model, it diverges in some key areas. JavaScript chooses to give a well-defined semantics to data-races, unlike the "undefined behaviour" of C/C++11. Moreover, the JavaScript model is mixed-size. This means that its accesses are not to discrete locations, but to (possibly overlapping) ranges of bytes. Conrad Watt, Christopher Pulte, Anton Podkopaev, Guillaume Barbier, Stephen Dolan, Shaked Flur, Jean Pichon-Pharabod, Shu-yu Guo |
PLDI | 8 |
| 2018 | EMME: A Formal Tool for ECMAScript Memory Model Evaluation
Cristian Mattarei, Clark W. Barrett, Shu-yu Guo, Bradley Nelson, Ben Smith |
TACAS (2) | 3 |
| 2015 | Optimization Coaching for JavaScriptabstractThe performance of dynamic object-oriented programming languages such as JavaScript depends heavily on highly optimizing just-in-time compilers. Such compilers, like all compilers, can silently fall back to generating conservative, low-performance code during optimization. As a result, programmers may inadvertently cause performance issues on users' systems by making seemingly inoffensive changes to programs. This paper shows how to solve the problem of silent optimization failures. It specifically explains how to create a so-called optimization coach for an object-oriented just-in-time-compiled programming language. The development and evaluation build on the SpiderMonkey JavaScript engine, but the results should generalize to a variety of similar platforms. Vincent St-Amour, Shu-yu Guo |
ECOOP | 2 |
| 2012 | Fast and precise hybrid type inference for JavaScriptabstractJavaScript performance is often bound by its dynamically typed nature. Compilers do not have access to static type information, making generation of efficient, type-specialized machine code difficult. We seek to solve this problem by inferring types. In this paper we present a hybrid type inference algorithm for JavaScript based on points-to analysis. Our algorithm is fast, in that it pays for itself in the optimizations it enables. Our algorithm is also precise, generating information that closely reflects the program's actual behavior even when analyzing polymorphic code, by augmenting static analysis with run-time type barriers. Brian Hackett, Shu-yu Guo |
PLDI | 2 |
| 2011 | The essence of compiling with tracesabstractThe technique of trace-based just-in-time compilation was introduced by Bala et al. and was further developed by Gal et al. It currently enjoys success in Mozilla Firefox's JavaScript engine. A trace-based JIT compiler leverages run-time profiling to optimize frequently-executed paths while enabling the optimized code to ``bail out'' to the original code when the path has been invalidated. This optimization strategy differs from those of other JIT compilers and opens the question of which trace optimizations are sound. In this paper we present a framework for reasoning about the soundness of trace optimizations, and we show that some traditional optimization techniques are sound when used in a trace compiler while others are unsound. The converse is also true: some trace optimizations are sound when used in a traditional compiler while others are unsound. So, traditional and trace optimizations form incomparable sets. Our setting is an imperative calculus for which tracing is explicitly spelled out in the semantics. We define optimization soundness via a notion of bisimulation, and we show that sound optimizations lead to confluence and determinacy of stores. Shu-yu Guo, Jens Palsberg |
POPL | 1 |