Programming Languages and Systems (TOPLAS)


Search Issue
enter search term and/or author name


ACM Transactions on Programming Languages and Systems (TOPLAS) - The MIT Press scientific computation series, Volume 8 Issue 1, Jan. 1986

PARLOG: parallel programming in logic
Keith Clark, Steve Gregory
Pages: 1-49
DOI: 10.1145/5001.5390
PARLOG is a logic programming language in the sense that nearly every definition and query can be read as a sentence of predicate logic. It differs from PROLOG in incorporating parallel modes of evaluation. For reasons of efficient...

A formal approach to undo operations in programming languages
George B. Leeman, Jr.
Pages: 50-87
DOI: 10.1145/5001.5005
A framework is presented for adding a general Undo facility to programming languages. A discussion of relevant literature is provided to show that the idea of Undoing pervades several areas in computer science, and even other disciplines. A...

Applicative caching
Robert M. Keller, M. R. Sleep
Pages: 88-108
DOI: 10.1145/5001.5004
The “referential transparency” principle of applicative language expressions stipulates that a single value exists for all occurrences of an expression in a given context (where a context is a set of bindings of variables to values)....

Efficient demand-driven evaluation. Part 2
Keshav Pingali, Arvind
Pages: 109-139
DOI: 10.1145/5001.5003
In Part 1 of this paper [5], we presented a scheme whereby a compiler could propagate demands through programs in a powerful stream language L. A data-driven evaluation of the transformed program performed exactly the same computation as a...

Axioms for memory access in asynchronous hardware systems
J. Misra
Pages: 142-153
DOI: 10.1145/5001.5007
The problem of concurrent accesses to registers by asynchronous components is considered. A set of axioms about the values in a register during concurrent accesses is proposed. It is shown that if these axioms are met by a register, then...

Proving liveness for networks of communicating finite state machines
Mohammed G. Gouda, Chung-Kuo Chang
Pages: 154-180
DOI: 10.1145/5001.5002
Consider a network of communicating finite state machines that exchange messages over unbounded FIFO channels. Each machine in the network can be defined by a directed graph whose nodes represent the machine states and whose edges represent its...