Demo Data from SIGIR 2026 / reviewers in the wild / expert
Robert Bocchino
dblp:50/10322 · also Robert L. Bocchino
· DBLP profile ↗
2ranked-venue papers
0as first author
1since 2021 · last 2021
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 2 · 1 since 2021
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 |
Programming languages and type systems · 87% Concurrent programming · 13% |
Topics — the 3 heaviest of 3, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems › language-based security
fractional permissions |
0.1 | 1 | 2012 | A type system for borrowing permissions · POPL 2012 |
Programming languages and type systems
type systems |
0.1 | 1 | 2012 | A type system for borrowing permissions · POPL 2012 |
Concurrent programming
concurrency correctness |
0.0 | 1 | 2012 | A type system for borrowing permissions · POPL 2012 |
Methods — techniques the papers use, named apart from their topics
unique permissions · 0.1shared permissions · 0.1local permissions · 0.1immutable permissions · 0.1change permissions · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | Integrated Modeling and Development of Component-Based Embedded Software in Scala
Klaus Havelund, Robert Bocchino |
ISoLA | 2 |
| 2012 | A type system for borrowing permissionsabstractIn object-oriented programming, unique permissions to object references are useful for checking correctness properties such as consistency of typestate and noninterference of concurrency. To be usable, unique permissions must be borrowed --- for example, one must be able to read a unique reference out of a field, use it for something, and put it back. While one can null out the field and later reassign it, this paradigm is ungainly and requires unnecessary writes, potentially hurting cache performance. Therefore, in practice borrowing must occur in the type system, without requiring memory updates. Previous systems support borrowing with external alias analysis and/or explicit programmer management of fractional permissions. While these approaches are powerful, they are also awkward and difficult for programmers to understand. We present an integrated language and type system with unique, immutable, and shared permissions, together with new local permissions that say that a reference may not be stored to the heap. Our system also includes change permissions such as unique>>unique and unique>>none that describe how permissions flow in and out of method formal parameters. Together, these features support common patterns of borrowing, including borrowing multiple local permissions from a unique reference and recovering the unique reference when the local permissions go out of scope, without any explicit management of fractions in the source language. All accounting of fractional permissions is done by the type system "under the hood." We present the syntax and static and dynamic semantics of a formal core language and state soundness results. We also illustrate the utility and practicality of our design by using it to express several realistic examples. Karl Naden, Robert Bocchino, Jonathan Aldrich, Kevin Bierhoff |
POPL | 2 |