2,199 papers · page 92 of 110
John H. Williams, Edward L. Wimmers
The designers of (functional) programming languages are faced with two occasionally conflicting goals: programmer convenience and semantic simplicity. For example, it is convenient to treat I/O operations as primitive “functions” with side effects, but doing so destroys referenti…
Randy Allen, David Callahan, Ken Kennedy
An algorithm for transforming sequential programs into equivalent parallel programs is presented. The method concentrates on finding loops whose separate iterations can be run in parallel without syn-chronization. Although a simple version of the method can be shown to be optimal…
Krzysztof R. Apt, Nissim Francez, Shmuel Katz
The relations among various languages and models for distributed computation and various possible definitions of fairness are considered. Natural semantic criteria are presented which an acceptable notion of fairness should satisfy. These are then used to demonstrate differences …
David Bernstein, Jeffrey M. Jaffe, Michael Rodeh
We consider a machine model in which load operations can be performed in parallel with arithmetic operations by two separate functional units. For this model, the evaluation of a set of expression trees is discussed. A dynamic programming algorithm to produce an approximate solut…
Jiazhen Cai, Robert Paige
An important research goal in software engineering and programming languages is the development of principles underlying the specification of computable problems, the translation of these problems into efficient and correct programs, and the performance analysis of these programs…
Paul Caspi, Daniel Pilaud, Nicolas Halbwachs, John Plaice
LUSTRE is a synchronous data-flow language for programming systems which interact with their environments in real-time. After an informal presentation of the language, we describe its semantics by means of structural inference rules. Moreover, we show how to use this semantics in…
David R. Chase
Article Free Access Share on An improvement to bottom-up tree pattern matching Author: D. R. Chase Department of Computer Science, Rice University, Houston, Texas Department of Computer Science, Rice University, Houston, TexasView Profile Authors Info & Claims POPL '87: Proceedin…
David R. Cheriton, Michael E. Wolf
An extended record facility is described that supports multi-module records by providing:
Matthias Felleisen, Daniel P. Friedman
Imperative assignments are abstractions of recurring programming patterns in purely functional programming languages. When added to higher-order functional languages, they provide a higher-level of modularity and security but invalidate the simple substitution semantics. We show …
David Gelernter, Suresh Jagannathan, Thomas London
We describe a programming language called Symmetric Lisp that treats environments as firstclass objects. Symmetric Lisp allows programmers to write expressions that evaluate to environments, and to create and denote variables and constants of type environment as well. One conseq…
Cordelia V. Hall, David S. Wise
Article Free Access Share on Compiling strictness into streams Authors: C. V. Hall Indiana University, 101 Lindley Hall, Bloomington, Indiana, U.S.A. Indiana University, 101 Lindley Hall, Bloomington, Indiana, U.S.A.View Profile , D. S. Wise Indiana University, 101 Lindley Hall, …
Maurice Herlihy, Jeannette M. Wing
Specification and verification techniques for abstract data types that have been successful for sequential programs can be extended in a natural way to provide the same benefits for concurrent programs. We propose an approach to specifying and verifying concurrent objects based o…
Cornelis Huizing, Rob Gerth, Willem P. de Roever
We present a fully abstract semantics for real-time distributed computing of the Ada and OCCAM kind in a denotational style. This semantics turns termination, communication along channels, and the time communication takes place, into observables. Yet it is the coarsest semantics …
Joxan Jaffar, Jean-Louis Lassez
We address the problem of designing programming systems to reason with and about constraints. Taking a logic programming approach, we define a class of programming languages, the CLP languages, all of which share the same essential semantic properties. From a conceptual point of …
Pierre Jouvelot
The parallelization of sequential programs is an adequate approach for the easy use of architectural features provided on parallel computers. We propose to enhance this technique with the notion of semantic parallelization. The principle is to consider the transformations of prog…
Eugene E. Kohlbecker, Mitchell Wand
This paper presents two new developments. First, it describes a “macro-by-example” specification language for syntactic abstractions in Lisp and related languages. This specification language allows a more declarative specification of macros than conventional macro facilities do …
Tsung-Min Kuo, Prateek Mishra
We study the strictness problem for the untyped lambda-calculus and for an ML-like typed calculus. We establish that strictness is a necessary and sufficient condition for the “eager” evaluation of function arguments. For the untyped calculus, we show that the strictness problem …
Peter Lee, Uwe F. Pleban
We have developed a new style of semantic definition called high-level semantics. In constrast to traditional denotational semantics, high-level semantics is suitable for both defining the functional meaning of programming languages, as well as describing realistic compiler imple…
Daniel Leivant, Tim Fernando
The notion of relative completeness of logics of programs was delineated almost ten years ago, in particular by Wand, Cook and Clarke. More recently, it has been felt that Cook's notion hinges on a fragile balance between the semantics of a programming language and first-order ex…
Zohar Manna, Amir Pnueli
∀-automata are non-deterministic finite-state automata over infinite sequences. They differ from conventional automata in that a sequence is accepted if all runs of the automaton over the sequence are accepting. These automata are suggested as a formalism for the specification an…