VLDB 2026 Research / reviewers in the wild / expert
John Peterson
dblp:41/3260
· DBLP profile ↗
12ranked-venue papers
4as first author
0since 2021 · last 2017
—ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 7 · 2 first-authorArtificial intelligence and machine learning · 2 · 1 first-authorSystems, architecture and hardware · 2 · 1 first-authorHuman-computer interaction and ubiquitous computing · 2 · 1 first-authorDatabases, data management, data science and information retrieval · 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 · 99% Compilers and program optimization · 1% | |
| Computer graphics and multimedia
1 paper |
Image and video processing · 100% | |
| Artificial intelligence
2 papers |
Robot manipulation · 60% Motion planning and robot control · 40% |
Topics — the 11 heaviest of 12, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems
domain-specific languages |
0.1 | 3 | 2002 | Specifying Behavior in C++ · ICRA 2002 Prototyping Real-Time Vision Systems: An Experiment in DSL Design · ICSE 1999 A Language for Declarative Robotic Programming · ICRA 1999 |
Programming languages and type systems › programming paradigms
functional reactive programming |
0.0 | 1 | 2002 | Specifying Behavior in C++ · ICRA 2002 |
Programming languages and type systems
language design |
0.0 | 1 | 2002 | Specifying Behavior in C++ · ICRA 2002 |
Image and video processing
real-time vision |
0.0 | 1 | 1999 | Prototyping Real-Time Vision Systems: An Experiment in DSL Design · ICSE 1999 |
Programming languages and type systems › domain-specific languages
embedded domain-specific languages |
0.0 | 1 | 1999 | Prototyping Real-Time Vision Systems: An Experiment in DSL Design · ICSE 1999 |
Programming languages and type systems › domain-specific languages
robot programming languages |
0.0 | 1 | 1999 | A Language for Declarative Robotic Programming · ICRA 1999 |
Programming languages and type systems
functional programming |
0.0 | 2 | 1999 | Prototyping Real-Time Vision Systems: An Experiment in DSL Design · ICSE 1999 A Language for Declarative Robotic Programming · ICRA 1999 |
Robotics › Robot manipulation
robot programming |
0.0 | 1 | 2002 | Specifying Behavior in C++ · ICRA 2002 |
Programming languages and type systems › type systems › polymorphism
ad-hoc polymorphism |
0.0 | 1 | 1993 | Implementing Type Classes · PLDI 1993 |
Programming languages and type systems › type systems › polymorphism
type classes |
0.0 | 1 | 1993 | Implementing Type Classes · PLDI 1993 |
Robotics › Motion planning and robot control
robot control |
0.0 | 1 | 1999 | A Language for Declarative Robotic Programming · ICRA 1999 |
Methods — techniques the papers use, named apart from their topics
functional reactive programming · 0.1haskell · 0.0functional programming · 0.0domain-specific language design · 0.0domain-specific embedded language · 0.0type inference · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2017 | Integrating Computer Science into Music EducationabstractWe present an experience report demonstrating the use a Domain-Specific Language, Nuterpea, in a general education music class. While the use of computing in music education is common, we demonstrate that {\em coding} allows students without a background in music or computing to explore topics in music form and theory. Coding supports a new style of music education, one that is focused on creating musical compositions rather that performance or appreciation of existing music. We focus on styles of music that can be built algorithmically from a structural description. With such music the use of coding allows students to define and use patterns in a way that makes it possible for complex compositions to be specified in a concise manner. This approach suits the context of general education; we have designed our curriculum around genres of music that are easily represented in an algorithmic manner. John Peterson, Greg Haynes |
SIGCSE | 1 |
| 2015 | Reactive Game Engine Programming for STEM OutreachabstractIn this paper we present our experiences using a novel programming style, reactive programming, to deliver a summer camp for students in grades 8 through 12. This software uses a declarative programming approach to allow students without a background in computing to explore a wide variety of subject material within a 3D virtual environment, including computer science, mathematics, physics, and art. This work is based on PyFRP, a reactive programming library written in Python. We describe our camp experience and provide examples of how this style of programming supports a wide variety of educational activities. Alan M. Cleary, Lucas Vandenbergh, John Peterson |
SIGCSE | 3 |
| 2010 | Transitioning to a business rule management service model: Case studies from the property and casualty insurance industry
Matthew L. Nelson, John Peterson, Robert L. Rariden, Ravi Sen |
Inf. Manag. | 2 |
| 2007 | HPorter: Using Arrows to Compose Parallel Processes
Liwen Huang, Paul Hudak, John Peterson |
PADL | 3 |
| 2003 | The Yampa arcadeabstractSimulated worlds are a common (and highly lucrative) application domain that stretches from detailed simulation of physical systems to elaborate video game fantasies. We believe that Functional Reactive Programming (FRP) provides just the right level of functionality to develop simulated worlds in a concise, clear and modular way. We demonstrate the use of FRP in this domain by presenting an implementation of the classic Space Invaders game in Yampa, our most recent Haskell-embedded incarnation of FRP. Antony Courtney, Henrik Nilsson, John Peterson |
Haskell | 3 |
| 2003 | Functional Hybrid Modeling
Henrik Nilsson, John Peterson, Paul Hudak |
PADL | 2 |
| 2002 | Functional reactive programming, continuedabstractFunctional Reactive Programming (FRP) extends a host programming language with a notion of time flow. Arrowized FRP (AFRP) is a version of FRP embedded in Haskell based on the arrow combinators. AFRP is a powerful synchronous dataflow programming language with hybrid modeling capabilities, combining advanced synchronous dataflow features with the higher-order lazy functional abstractions of Haskell. In this paper, we describe the AFRP programming style and our Haskell-based implementation. Of particular interest are the AFRP combinators that support dynamic collections and continuation-based switching. We show how these combinators can be used to express systems with an evolving structure that are difficult to model in more traditional dataflow languages. Henrik Nilsson, Antony Courtney, John Peterson |
Haskell | 3 |
| 2002 | Specifying Behavior in C++abstractMost robot programming takes place in the "time domain", that is, the goal is to specify the behavior of a system that is acquiring a continual temporal stream of inputs, and is required to provide a continual, temporal stream of outputs. We present a reactive programming language, based on the functional reactive programming paradigm, for specifying such behavior. The major attributes of this language are: 1) it provides for both synchronous and asynchronous definitions of behavior; 2) specification is equational in nature; 3) it is type safe; and 4) it is embedded in C++. In particular the latter makes it simple to "lift" existing C++ libraries into the language. Xiangtian Dai, Gregory D. Hager, John Peterson |
ICRA | 3 |
| 2001 | FVision: A Declarative Language for Visual Tracking
John Peterson, Paul Hudak, Alastair Reid 0001, Gregory D. Hager |
PADL | 1 |
| 1999 | A Language for Declarative Robotic ProgrammingabstractWe have applied methodologies developed for domain-specific embedded languages to create a high-level robot control language called Frob, for functional robotics. Frob supports a programming style that cleanly separates the what from the how of a robotic control program. That is, the what is a simple, easily understood definition of the control strategy using groups of equations and primitives which combine sets of these control system equations into a complex system. The how aspect of the program addresses the unpleasant details, such as the method used to realize these equations, the connection between the control equations and the sensors and effectors in the robot, and communication with other elements of the system. Frob is a system that supports rapid prototyping of new control strategies, enables software reuse through composition, and defines a system in a way that can be formally reasoned about and transformed. John Peterson, Gregory D. Hager, Paul Hudak |
ICRA | 1 |
| 1999 | Prototyping Real-Time Vision Systems: An Experiment in DSL DesignabstractDescribes the enhancement of XVision, a large library of C++ code for real-time vision processing, into FVision (pronounced fission), a fully-featured domain-specific language (DSL) embedded in Haskell. The resulting prototype system substantiates the claims of increased modularity, effective code reuse and rapid prototyping that characterize the DSL approach to systems design. It also illustrates the need for judicious interface design: relegating computationally expensive tasks to XVision (pre-existing C++ components) and leaving modular compositional tasks to FVision (Haskell). At the same time, our experience demonstrates how Haskell's advanced language features (specifically, parametric polymorphism, lazy evaluation, higher-order functions and automatic storage reclamation) permit a rapid DSL design that is itself highly modular and easily modified. Overall, the resulting hybrid system exceeded our expectations: visual tracking programs continue to spend most of their time executing low-level image processing code, while Haskell's advanced features allow us to quickly develop and test small prototype systems within a matter of a few days, and to develop realistic applications within a few weeks. Alastair Reid 0001, John Peterson, Gregory D. Hager, Paul Hudak |
ICSE | 2 |
| 1993 | Implementing Type ClassesabstractWe describe the implementation of a type checker for the functional programming language Haskell that supports the use of type classes. This extends the type system of ML to support overloading (ad-hoc polymorphism) and can be used to implement features such as equality types and numeric overloading in a simple and general way. John Peterson, Mark P. Jones |
PLDI | 1 |