Demo Data from SIGIR 2026 / reviewers in the wild / expert
Russell R. Atkinson
dblp:63/1137
· DBLP profile ↗
5ranked-venue papers
3as first author
0since 2021 · last 1995
—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-authorSystems, architecture and hardware · 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
3 papers |
Concurrent programming · 33% Compilers and program optimization · 29% Runtime systems and virtual machines · 29% | |
| Computer architecture, parallel and distributed computing, and storage systems
2 papers |
Integrated circuit design · 52% Distributed systems · 17% Memory systems · 16% |
Topics — the 7 heaviest of 11, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Integrated circuit design › VLSI design
VLSI processor design |
0.0 | 1 | 1987 | The Dragon Processor · ASPLOS 1987 |
Concurrent programming
synchronization |
0.0 | 2 | 1979 | Specification and Proof Techniques for Serializers · IEEE Trans. Software Eng. 1979 Parallelism and Synchronization in Actor Systems · POPL 1977 |
Programming languages and type systems
language design |
0.0 | 1 | 1989 | Experiences Creating a Portable Cedar · PLDI 1989 |
Concurrent programming › synchronization
monitors |
0.0 | 2 | 1979 | Specification and Proof Techniques for Serializers · IEEE Trans. Software Eng. 1979 Parallelism and Synchronization in Actor Systems · POPL 1977 |
Distributed systems
distributed coordination |
0.0 | 1 | 1979 | Specification and Proof Techniques for Serializers · IEEE Trans. Software Eng. 1979 |
Concurrent programming › concurrency models
actor model |
0.0 | 1 | 1977 | Parallelism and Synchronization in Actor Systems · POPL 1977 |
Concurrent programming
message passing |
0.0 | 1 | 1977 | Parallelism and Synchronization in Actor Systems · POPL 1977 |
Methods — techniques the papers use, named apart from their topics
c as intermediate language · 0.0VLSI design · 0.0specification language · 0.0proof techniques · 0.0proof technique · 0.0actor model · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 1995 | Ropes: An Alternative to StringsabstractAbstract Programming languages generally provide a ‘string’ or ‘text’ type to allow manipulation of sequences of characters. This type is usually of crucial importance, since it is normally mentioned in most interfaces between system components. We claim that the traditional implementations of strings, and often the supported functionality, are not well suited to such general‐purpose use. They should be confined to applications with specific, and unusual, performance requirements. We present ‘ropes’ or ‘heavyweight’ strings as an alternative that, in our experience leads to systems that are more robust, both in functionality and in performance. Ropes have been in use in the Cedar environment almost since its inception, but this appears to be neither well‐known, nor discussed in the literature. The algorithms have been gradually refined. We have also recently built a second similar, but somewhat lighter weight, C‐language implementation, which is included in our publically released garbage collector distribution. We describe the algorithms used in both, and give some performance measurements for the C version. Hans-Juergen Boehm, Russell R. Atkinson, Michael F. Plass |
Softw. Pract. Exp. | 2 |
| 1989 | Experiences Creating a Portable CedarabstractCedar is the name for both a language and an environment in use in the Computer Science Laboratory at Xerox PARC since 1980. The Cedar language is a superset of Mesa, the major additions being garbage collection and runtime types. Neither the language nor the environment was originally intended to be portable, and for many years ran only on D-machines at PARC and a few other locations in Xerox. We recently re-implemented the language to make it portable across many different architectures. Our strategy was, first, to use machine-dependent C code as an intermediate language, second, to create a language-independent layer known as the Portable Common Runtime, and third, to write a relatively large amount of Cedar-specific runtime code in a subset of Cedar itself. By treating C as an intermediate code we are able to achieve reasonably fast compilation, very good eventual machine code, and all with relatively small programmer effort. Because Cedar is a much richer language than C, there were numerous issues to resolve in performing an efficient translation and in providing reasonable debugging. These strategies will be of use to many other porters of high-level languages who may wish to use C as an assembler language without giving up either ease of debugging or high performance. We present a brief description of the Cedar language, our portability strategy for the compiler and runtime, our manner of making connections to other languages and the Unix* operating system, and some measures of the performance of our “Portable Cedar”. Russell R. Atkinson, Alan J. Demers, Carl H. Hauser, Peter Kessler, Mark D. Weiser |
PLDI | 1 |
| 1987 | The Dragon ProcessorabstractThe Xerox PARC Dragon is a VLSI research computer that uses several techniques to achieve dense code and fast procedure calls in a system that can support multiple processors on a central high bandwidth memory bus. Russell R. Atkinson, Edward M. McCreight |
ASPLOS | 1 |
| 1979 | Specification and Proof Techniques for SerializersabstractThis paper presents a specification language, implementation mechanism, and proof techniques for problems involving the arbitration of concurrent requests to shared protected resources whose integrity must be preserved. This mechanism is the serializer, which may be described as a kind of protection mechanism, in that it prevents improper orders of access to a protected resource. Serializers are a more structured form of the monitor mechanism of Brinch Hansen and Hoare. Carl Hewitt, Russell R. Atkinson |
IEEE Trans. Software Eng. | 2 |
| 1977 | Parallelism and Synchronization in Actor SystemsabstractThis paper presents a mechanism for the arbitration of parallel requests to shared resources. This mechanism is the serialize, which may be described as a kind of protection mechanism, in that it prevents improper orders of access to a protected resource. The mechanism is a generalization and improvement of the monitor mechanism of Brinch-Hansen and Hoare.Serializers attempt to systematize and abstract desirable structural features of synchronization control structure into a coherent language construct. They represent an improvement in the modularity of synchronization over monitors in several respects. Monitors synchronize requests by providing a pair of operations for each request type [examples are STARTREAD/ENDREAD and STARTWRITE/ENDWRITE for the readers-writers problems]. Such a pair of operations must be used in a certain order for the synchronization to work properly, yet nothing in the monitors construct enforces this use. Serializers incorporate this structural aspect of synchronization in a unified mechanism to guarantee proper check-in and check-out. In scheduling access to a protected resource, it is often desired to wait in a queue for a certain condition before it continues execution. Monitors require that a process waiting in a queue will remain dormant forever, unless another process explicitly signals to the dormant process that it should continue. Serializers improve the modularity of synchronization by providing that the condition for resuming execution must be explicitly stated when a process enters a queue making it it unnecessary for processes to signal other processes. Each process determines for itself the conditions required for its further execution.The behavior of a serializer is defined using the actor message-passing model of computation. Different versions of the "readers-writers" problems are used to illustrate how the structure of a serializer corresponds in a natural way to the structure of the arbitration problem to be solved. The correspondence makes it easier to synthesize a scheduler from behavioral specifications and to verify that an implementation satisfies its specifications.No claim is made for the "completeness" of the serializer mechanism, beyond showing that semaphores can be implemented using serializers. Further, no "complete" solution is proposed to the "no-starvation" specification which requires that a resource reply to each request which it receives. Rather, it is shown for some simple examples that serializers represent a step toward better structuring of parallel access to shared resources, and that proofs that starvation is impossible for these examples are easier with serializers than with some of the currently existing mechanisms for controlling parallel access to resources. Russell R. Atkinson, Carl Hewitt |
POPL | 1 |