Demo Data from EDBT 2026 / reviewers in the wild / expert
Brent Hailpern
dblp:h/BrentHailpern
· DBLP profile ↗
10ranked-venue papers
7as first author
0since 2021 · last 1992
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 5 · 3 first-authorComputer networks · 3 · 3 first-authorSystems, architecture and hardware · 2 · 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
7 papers |
Program verification · 55% Programming languages and type systems · 41% Concurrent programming · 4% | |
| Computer architecture, parallel and distributed computing, and storage systems
3 papers |
Distributed systems · 76% Performance modeling and evaluation · 15% High-performance computing · 9% | |
| Computer networks
3 papers |
Internet architecture and protocols · 60% Routing and switching · 40% | |
| Network and information security
1 paper |
Authentication and access control · 100% |
Topics — the 18 heaviest of 21, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Distributed systems › distributed object systems
distributed object model |
0.0 | 1 | 1992 | An Object-Based Programming Model for Shared Data · ACM Trans. Program. Lang. Syst. 1992 |
Authentication and access control
access control |
0.0 | 1 | 1990 | Extending Objects to Support Multiple Interfaces and Access Control · IEEE Trans. Software Eng. 1990 |
Programming languages and type systems
object-oriented programming |
0.0 | 1 | 1990 | Extending Objects to Support Multiple Interfaces and Access Control · IEEE Trans. Software Eng. 1990 |
Programming languages and type systems
functional programming |
0.0 | 1 | 1989 | Comparing Two Functional Programming Systems · IEEE Trans. Software Eng. 1989 |
Program verification
concurrent program verification |
0.0 | 2 | 1983 | Modular Verification of Computer Communication Protocols · IEEE Trans. Commun. 1983 Modular Verification of Concurrent Programs · POPL 1982 |
Program verification
modular verification |
0.0 | 2 | 1983 | Modular Verification of Computer Communication Protocols · IEEE Trans. Commun. 1983 Modular Verification of Concurrent Programs · POPL 1982 |
Internet architecture and protocols
local area network |
0.0 | 1 | 1985 | ALAN: A (Circuit-Switched) Local Area Network · IEEE J. Sel. Areas Commun. 1985 |
Routing and switching › switching networks
non-blocking switching |
0.0 | 1 | 1985 | ALAN: A (Circuit-Switched) Local Area Network · IEEE J. Sel. Areas Commun. 1985 |
Program verification › model checking
finite-state verification |
0.0 | 1 | 1985 | A Simple Protocol Whose Proof Isn't · IEEE Trans. Commun. 1985 |
Program verification
protocol verification |
0.0 | 1 | 1985 | A Simple Protocol Whose Proof Isn't · IEEE Trans. Commun. 1985 |
Programming languages and type systems › object-oriented programming
encapsulation |
0.0 | 1 | 1992 | An Object-Based Programming Model for Shared Data · ACM Trans. Program. Lang. Syst. 1992 |
Program verification › temporal logic verification
safety and liveness verification |
0.0 | 1 | 1982 | Modular Verification of Concurrent Programs · POPL 1982 |
Program verification › temporal logic
temporal logic specification |
0.0 | 1 | 1982 | Modular Verification of Concurrent Programs · POPL 1982 |
Performance modeling and evaluation
benchmarking |
0.0 | 1 | 1989 | Comparing Two Functional Programming Systems · IEEE Trans. Software Eng. 1989 |
High-performance computing
cluster computing |
0.0 | 1 | 1985 | ALAN: A (Circuit-Switched) Local Area Network · IEEE J. Sel. Areas Commun. 1985 |
Internet architecture and protocols › protocol engineering
protocol correctness |
0.0 | 1 | 1983 | Modular Verification of Computer Communication Protocols · IEEE Trans. Commun. 1983 |
Concurrent programming › synchronization
monitors |
0.0 | 1 | 1983 | Script: A Communication Abstraction Mechanism · PODC 1983 |
Concurrent programming › synchronization
shared-memory synchronization |
0.0 | 1 | 1983 | Script: A Communication Abstraction Mechanism · PODC 1983 |
Methods — techniques the papers use, named apart from their topics
views mechanism · 0.0graph reduction · 0.0benchmarking · 0.0temporal logic · 0.0star topology · 0.0module specification · 0.0intelligent workstation nodes · 0.0history variables · 0.0finite-state-machine approach · 0.0abstract-program approach · 0.0enrollment of processes into roles · 0.0monotonic predicates · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 1992 | An Object-Based Programming Model for Shared DataabstractThe classical object model supports private data within objects and clean interfaces between objects, and by definition does not permit sharing of data among arbitrary objects. This is a problem for real-world applications, such as advanced financial services and integrated network management, where the same data logically belong to multiple objects and may be distributed over multiple nodes on the network. Rather than give up the advantages of encapsulated objects in modeling real-world entities, we propose a new object model that supports shared data in a distributed environment. The key is separating distribution of computation units from information-hiding concerns. Minimal units of data and control, called facets , may be shared among multiple objects and are grouped into processes . Thus, a single object, or information-hiding unit, may be distributed among multiple processes, or computation units. In other words, different facets of the same object may reside in different address spaces on different machines. We introduce our new object model, describe a motivating example from the financial domain, and then explain facets, objects, and processes, followed by timing and synchronization concerns. Gail E. Kaiser, Brent Hailpern |
ACM Trans. Program. Lang. Syst. | 2 |
| 1991 | Dynamic reconfiguration in an object-based programming language with distributed shared dataabstractAn approach to dynamic reconfiguration in online distributed applications based on a data sharing model is presented. The data sharing model consists of facets, objects, and processes, with facets as the unit of sharing. The primary contribution of this work is the addition of important special cases of dynamic reconfiguration, without resorting to general dynamic allocation. A metaphor consistent with PROFIT's data sharing model for expressing dynamic reconfiguration facilities within the programming language is proposed.> Brent Hailpern, Gail E. Kaiser |
ICDCS | 1 |
| 1990 | Extending Objects to Support Multiple Interfaces and Access ControlabstractA mechanism, called views, that allows programmers to specify multiple interfaces for objects and to control explicitly access to each interface is described. This mechanism provides a simple and flexible means of specifying enforceable access restrictions at many levels of granularity. It also results in system organization that supports browsing based on a number of different criteria. Views is defined, some examples of its uses are given, the impact of views on system organization is discussed, and five approaches to implementing views are outlined.> Brent Hailpern, Harold Ossher |
IEEE Trans. Software Eng. | 1 |
| 1989 | Comparing Two Functional Programming SystemsabstractA technique is presented for comparing the performance of functional languages with different evaluation strategies running on different machines. A set of small benchmarks is used, and th execution times of these programs running in the functional language and in the implementation language of the functional system are compared. The ratio of these execution times measured how well the functional system used the resources of the underlying hardware and implementation language. Also two functional programming systems are described. One system is a graph reduction interpreter for lambda calculus. The other is a DEL-style intermediate instruction set architecture for FP. The benchmarks in FP and the performances of the two systems on these benchmarks are presented.> Brent Hailpern, Tien Huynh, György E. Révész |
IEEE Trans. Software Eng. | 1 |
| 1986 | Script: A Communication Abstraction Mechanism and Its Verification
Nissim Francez, Brent Hailpern, Gadi Taubenfeld |
Sci. Comput. Program. | 2 |
| 1985 | ALAN: A (Circuit-Switched) Local Area NetworkabstractOur view is that people (that is, programmers and general computer users) tend to work together in small groups, where information and resources are shared freely within a group. Most interactions occur within the group (called a cluster)-sending messages, exchanging data, sharing a printer. Communication outside the cluster-sending mail to someone in another group or using a large number cruncher-is comparalively rare. Under this hypothesis, it is advantageous to optimize and simplify interactions within the group. This paper describes our attempt to design a cluster network based on a nonblocking crosspoint switch, which we call ALAN (a local area net). ALAN clusters are star-connected-with intelligent workstation nodes (PC's) at the points of the star, and the ALAN switch at the center. Brent Hailpern, Andrew R. Heller, Lee W. Hoevel, Yannick J. Thefaine |
IEEE J. Sel. Areas Commun. | 1 |
| 1985 | A Simple Protocol Whose Proof Isn'tabstractAho, Ullman, and Yannakakis have proposed a set of protocols that ensure reliable transmission of data across an error-prone channel. They have obtained lower bounds on the complexity required of the protocols to assure reliability for different classes of errors. They specify these protocols with finite-state machines. Although the protocol machines have only a small number of states, they are nontrivial to prove correct. In this paper we present proofs of one of these protocols using the finite-state-machine approach and the abstract-program approach. We also show that the abstract-program approach gives special insight into the operation of the protocol. Brent Hailpern |
IEEE Trans. Commun. | 1 |
| 1983 | Script: A Communication Abstraction MechanismabstractIn this paper, we introduce a new abstraction mechanism, called a script, which hides the low-level details that implement patterns of communication. A script localizes the communication between a set of roles (formal processes), to which actual processes enroll in order to participate in the action of the script. The paper discusses the addition of scripts to the languages CSP and Ada, as well as to a shared-variable language with monitors. Nissim Francez, Brent Hailpern |
PODC | 2 |
| 1983 | Modular Verification of Computer Communication ProtocolsabstractPrograms that implement computer communications protocols can exhibit extremely complicated behavior, and neither informal reasoning nor testing is reliable enough to establish their correctness. In this paper we discuss the application of modular program verification techniques to protocols. This approach is more reliable than informal reasoning, but has an advantage over formal reasoning based on finite-state models, the complexity of the proof need not grow unmanageably as the size of the program increases. Certain tools of concurrent program verification that are especially useful for protocols are presented, history variables that record sequences of input and output values, temporal logic for expressing properties that must hold in a future system state such as eventual receipt of a message), and module specification and composition rules. The use of these techniques is illustrated by verifying two data transfer protocols from the literature: the alternating bit protocol and a protocol proposed by Stenning. Brent Hailpern, Susan S. Owicki |
IEEE Trans. Commun. | 1 |
| 1982 | Modular Verification of Concurrent ProgramsabstractVerifying concurrent systems can be difficult because of the complex interactions possible between system components. In this paper, we propose a technique to simplify the task: modular composition of sequential proofs. We model a parallel program as a set of modules that interact by procedure calls. The properties of each module are proved using a sequential-program verification technique. If the modules satisfy a set of constraints presented in this paper, we may compose the modules into a system and the properties of the modules into properties of the system. The constraints ensure that the specifications are robust for each module where they are defined or used, in the sense that they are unaffected by current actions of other modules. A specification can be guaranteed robust for module m by restricting it to local variables of m, or by using monotonic predicates, which once true remain true forever. Our technique can be used to prove safety and liveness properties of parallel programs---the liveness properties are specified using temporal logic. Brent Hailpern, Susan S. Owicki |
POPL | 1 |