Demo Data from EDBT 2026 / reviewers in the wild / expert
Todd B. Knoblock
dblp:06/4003
· DBLP profile ↗
7ranked-venue papers
4as first author
0since 2021 · last 2001
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 4 · 3 first-authorArtificial intelligence and machine learning · 1Graphics, computer vision, multimedia, augmented reality and games · 1Human-computer interaction and ubiquitous computing · 1Theory 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
4 papers |
Programming languages and type systems · 57% Compilers and program optimization · 43% | |
| Computer graphics and multimedia
1 paper |
Rendering · 100% | |
| Theoretical computer science
1 paper |
Logic in computer science · 50% Automated reasoning and model checking · 50% |
Topics — the 10 heaviest of 12, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems
bytecode verification |
0.0 | 1 | 2001 | Type elaboration and subtype completion for Java bytecode · ACM Trans. Program. Lang. Syst. 2001 |
Programming languages and type systems › type systems
subtyping |
0.0 | 1 | 2001 | Type elaboration and subtype completion for Java bytecode · ACM Trans. Program. Lang. Syst. 2001 |
Programming languages and type systems
type inference |
0.0 | 1 | 2001 | Type elaboration and subtype completion for Java bytecode · ACM Trans. Program. Lang. Syst. 2001 |
Compilers and program optimization › intermediate representation
bytecode |
0.0 | 1 | 2000 | Type Elaboration and Subtype Completion for Java Bytecode · POPL 2000 |
Compilers and program optimization › intermediate representation › bytecode
java bytecode |
0.0 | 1 | 2000 | Type Elaboration and Subtype Completion for Java Bytecode · POPL 2000 |
Programming languages and type systems
type systems |
0.0 | 1 | 2000 | Type Elaboration and Subtype Completion for Java Bytecode · POPL 2000 |
Compilers and program optimization
partial evaluation |
0.0 | 1 | 1996 | Data Specialization · PLDI 1996 |
Compilers and program optimization
program specialization |
0.0 | 1 | 1995 | Specializing shaders · SIGGRAPH 1995 |
Automated reasoning and model checking › automated reasoning
metareasoning |
0.0 | 1 | 1986 | Formalized Metareasoning in Type Theory · LICS 1986 |
Logic in computer science
type theory |
0.0 | 1 | 1986 | Formalized Metareasoning in Type Theory · LICS 1986 |
Methods — techniques the papers use, named apart from their topics
partial evaluation · 0.0type inference · 0.0dynamic compilation · 0.0formalization · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2001 | Type elaboration and subtype completion for Java bytecodeabstractJava source code is strongly typed, but the translation from Java source to bytecode omits much of the type information originally contained within methods. Type elaboration is a technique for reconstructing strongly typed programs from incompletely typed bytecode by inferring types for local variables. There are situations where, technically, there are not enough types in the original type hierarchy to type a bytecode program. Subtype completion is a technique for adding necessary types to an arbitrary type hierarchy to make type elaboration possible for all verifiable Java bytecode. Type elaboration with subtype completion has been implemented as part of the Marmot Java compiler. Todd B. Knoblock, Jakob Rehof |
ACM Trans. Program. Lang. Syst. | 1 |
| 2000 | Type Elaboration and Subtype Completion for Java BytecodeabstractJava source code is strongly typed, but the translation from Java source to bytecode omits much of the type information originally contained within methods. Type elaboration is a technique for reconstructing strongly typed programs from incompletely typed bytecode by inferring types for local variables. Todd B. Knoblock, Jakob Rehof |
POPL | 1 |
| 2000 | Marmot: an optimizing compiler for JavaabstractThe Marmot system is a research platform for studying the implementation of high level programming languages. It currently comprises an optimizing native-code compiler, runtime system, and libraries for a large subset of Java. Marmot integrates well-known representation, optimization, code generation, and runtime techniques with a few Java-specific features to achieve competitive performance. This paper contains a description of the Marmot system design, along with highlights of our experience applying and adapting traditional implementation techniques to Java. A detailed performance evaluation assesses both Marmot's overall performance relative to other Java and C++ implementations, and the relative costs of various Java language features in Marmot-compiled code. Our experience with Marmot has demonstrated that well-known compilation techniques can produce very good performance for static Java applications – comparable or superior to other Java systems, and approaching that of C++ in some cases. Copyright © 2000 John Wiley & Sons, Ltd. Robert P. Fitzgerald, Todd B. Knoblock, Erik Ruf, Bjarne Steensgaard, David Tarditi |
Softw. Pract. Exp. | 2 |
| 1996 | Data SpecializationabstractGiven a repeated computation, part of whose input context remains invariant across all repetitions, program staging improves performance by separating the computation into two phases. An early phase executes only once, performing computations depending only on invariant inputs, while a late phase repeatedly performs the remainder of the work given the varying inputs and the results of the early computations.Common staging techniques based on dynamic compilation statically construct an early phase that dynamically generates object code customized for a particular input context. In effect, the results of the invariant computations are encoded as the compiled code for the late phase.This paper describes an alternative approach in which the results of early computations are encoded as a data structure, allowing both the early and late phases to be generated statically. By avoiding dynamic code manipulation, we give up some optimization opportunities in exchange for significantly lower dynamic space/time overhead and reduced implementation complexity. Todd B. Knoblock, Erik Ruf |
PLDI | 1 |
| 1995 | Specializing shadersabstractWe have developed a system for interactive manipulation of shading parameters for three dimensional rendering.The system takes as input user-defined shaders, written in a subset of C, which are then specialized for interactive use.Since users typically experiment with different values of a single shader parameter while leaving the others constant, we can benefit by automatically generating a specialized shader that performs only those computations depending on the parameter being varied; all other values needed by the shader can be precomputed and cached.The specialized shaders are as much as 95 times faster than the original user defined shader.This dramatic improvement in speed makes it possible to interactively view parameter changes for relatively complex shading models, such as procedural solid texturing. Brian K. Guenter, Todd B. Knoblock, Erik Ruf |
SIGGRAPH | 2 |
| 1986 | Formalized Metareasoning in Type Theory
Todd B. Knoblock, Robert L. Constable |
LICS | 1 |
| 1985 | Writing Programs that Construct Proofs
Robert L. Constable, Todd B. Knoblock, Joseph L. Bates |
J. Autom. Reason. | 2 |