VLDB 2026 Research / reviewers in the wild / expert
Shane Markstrum
dblp:84/1899
· DBLP profile ↗
7ranked-venue papers
2as first author
0since 2021 · last 2010
—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-authorSystems, architecture and hardware · 1 · 1 first-authorSecurity and privacy · 1
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
4 papers |
Programming languages and type systems · 37% Program analysis · 26% Software maintenance and evolution · 17% |
Topics — the 9 heaviest of 13, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems › type systems › static typing
pluggable type systems |
0.2 | 2 | 2010 | JavaCOP: Declarative pluggable types for java · ACM Trans. Program. Lang. Syst. 2010 A framework for implementing pluggable type systems · OOPSLA 2006 |
Programming languages and type systems
type systems |
0.2 | 2 | 2010 | JavaCOP: Declarative pluggable types for java · ACM Trans. Program. Lang. Syst. 2010 Semantic type qualifiers · PLDI 2005 |
Program analysis
data flow analysis |
0.1 | 1 | 2010 | JavaCOP: Declarative pluggable types for java · ACM Trans. Program. Lang. Syst. 2010 |
Program analysis › data flow analysis
flow-sensitive analysis |
0.1 | 1 | 2010 | JavaCOP: Declarative pluggable types for java · ACM Trans. Program. Lang. Syst. 2010 |
Software testing › system software testing › language processor testing
type system testing |
0.1 | 1 | 2010 | JavaCOP: Declarative pluggable types for java · ACM Trans. Program. Lang. Syst. 2010 |
Software maintenance and evolution › refactoring
concurrency refactoring |
0.1 | 1 | 2009 | Towards concurrency refactoring for x10 · PPoPP 2009 |
Software maintenance and evolution
refactoring |
0.1 | 1 | 2009 | Towards concurrency refactoring for x10 · PPoPP 2009 |
Programming languages and type systems › type systems › refinement types
type qualifiers |
0.1 | 1 | 2005 | Semantic type qualifiers · PLDI 2005 |
Programming languages and type systems › type systems
refinement types |
0.0 | 1 | 2005 | Semantic type qualifiers · PLDI 2005 |
Methods — techniques the papers use, named apart from their topics
declarative constraint language · 0.1abstract syntax tree constraints · 0.1declarative rule language · 0.1soundness proof · 0.1extensible typechecking · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2010 | JavaCOP: Declarative pluggable types for javaabstractPluggable types enable users to enforce multiple type systems in one programming language. We have developed a suite of tools, called the JavaCOP framework, that allows developers to create pluggable type systems for Java. JavaCOP provides a simple declarative language in which program constraints are defined over a program's abstract syntax tree. The JavaCOP compiler automatically enforces these constraints on programs during compilation. The JavaCOP framework also includes a dataflow analysis API in order to support type systems which depend on flow-sensitive information. Finally, JavaCOP includes a novel test framework which helps users gain confidence in the correctness of their pluggable type systems. We demonstrate the framework by discussing a number of pluggable type systems which have been implemented in JavaCOP in order to detect errors and enforce strong invariants in programs. These type systems range from general-purpose checkers, such as a type system for nonnull references, to domain-specific ones, such as a checker for conformance to a library's usage rules. Shane Markstrum, Daniel Marino, Matthew Esquivel, Todd D. Millstein, Chris Andreae, James Noble 0001 |
ACM Trans. Program. Lang. Syst. | 1 |
| 2009 | Towards concurrency refactoring for x10abstractIn this poster, we present our vision of refactoring support for languages with a partitioned global address space memory model as embodied in the X10 programming language. We examine a novel refactoring, extract concurrent, that introduces additional concurrency within a loop by arranging for some user-selected code in the loop body to run in parallel with other iterations of the loop. We discuss the mechanisms and challenges for implementing this refactoring and how development of this refactoring provides insight for designing future refactorings. Shane Markstrum, Robert M. Fuhrer, Todd D. Millstein |
PPoPP | 1 |
| 2007 | Enforcing and validating user-defined programming disciplinesabstractNo abstract available. Brian Chin, Daniel Marino, Shane Markstrum, Todd D. Millstein |
PASTE | 3 |
| 2006 | Inference of User-Defined Type Qualifiers and Qualifier Rules
Brian Chin, Shane Markstrum, Todd D. Millstein, Jens Palsberg |
ESOP | 2 |
| 2006 | A framework for implementing pluggable type systemsabstractPluggable types have been proposed to support multiple type systems in the same programming language. We have designed and implemented JavaCOP, a program constraint system for implementing practical pluggable type systems for Java. JavaCOP enforces user-defined typing constraints written in a declarative and expressive rule language. We have validated our design by (re)implementing a range of type systems and program checkers. By using a program constraint system to implement pluggable types, programmers are able to check that their programs will operate correctly in restricted environments, adhere to strict programming rules, avoid null pointer errors or scoped memory exceptions, and meet style guidelines, while programming language researchers can easily experiment with novel type systems. Chris Andreae, James Noble 0001, Shane Markstrum, Todd D. Millstein |
OOPSLA | 3 |
| 2005 | Semantic type qualifiersabstractWe present a new approach for supporting user-defined type refinements, which augment existing types to specify and check additional invariants of interest to programmers. We provide an expressive language in which users define new refinements and associated type rules. These rules are automatically incorporated by an extensible typechecker during static typechecking of programs. Separately, a soundness checkerautomatically proves that each refinement's type rules ensure the intended invariant, for all possible programs. We have formalized our approach and have instantiated it as a framework for adding new type qualifiers to C programs. We have used this framework to define and automatically prove sound a host of type qualifiers of different sorts, including pos and neg for integers, tainted and untainted for strings, and nonnull and unique for pointers, and we have applied our qualifiers to ensure important invariants on open-source C programs. Brian Chin, Shane Markstrum, Todd D. Millstein |
PLDI | 2 |
| 2003 | Securing nomads: the case for quarantine, examination, and decontaminationabstractThe rapid growth and increasing pervasiveness of wireless networks raises serious security concerns. Client devices will migrate between numerous diverse wireless environments, bringing with them software vulnerabilities and possibly malicious code. Techniques are needed to protect wireless client devices and the next generation wireless infrastructure. We propose QED, a new security model for wireless networks that enables wireless environments to quarantine devices and then analyze and potentially update or "decontaminate" client nodes. The QED paradigm is presented here, as well as the design of a practical prototype. Kevin Eustice, Leonard Kleinrock, Shane Markstrum, Gerald J. Popek, Venkatraman Ramakrishna, Peter L. Reiher |
NSPW | 3 |