Results 1 
9 of
9
Reasoning with Continuations II: Full Abstraction for Models of Control
 In Proceedings of the 1990 ACM Conference on Lisp and Functional Programming
, 1990
"... A fully abstract model of a programming language assigns the same meaning to two terms if and only if they have the same operational behavior. Such models are wellknown for functional languages but little is known about extended functional languages with sophisticated control structures. We show th ..."
Abstract

Cited by 32 (4 self)
 Add to MetaCart
A fully abstract model of a programming language assigns the same meaning to two terms if and only if they have the same operational behavior. Such models are wellknown for functional languages but little is known about extended functional languages with sophisticated control structures. We show that a direct model with error values and the conventional continuation model are adequate for functional languages augmented with first and higherorder control facilities, respectively. Furthermore, both models become fully abstract on adding a control delimiter and a parallel conditional to the programming languages.
Declarative Continuations and Categorical Duality
, 1989
"... This thesis presents a formalism for reasoning about continuations in a categorical setting. It points out how values and continuations ca n be seen as categorically dual concepts, and that this symmetry extends to not only data types, but also control structures, evaluation strategies and higheror ..."
Abstract

Cited by 30 (0 self)
 Add to MetaCart
This thesis presents a formalism for reasoning about continuations in a categorical setting. It points out how values and continuations ca n be seen as categorically dual concepts, and that this symmetry extends to not only data types, but also control structures, evaluation strategies and higherorder constructs. The central idea is a view of continuations as a declarative concept, rather than an imperative one, and the implicat ions of this make up the spine of the presentation. A symmetrical extension of the typed *calculus is introduced, where values and continuations are treated as opposites, permitting a mirrorimage syntax for dual categorical concepts like products and coproducts. An implementable semantic description and a static type system for this calculus are given. A purely categorical description of the language is also obtained, through a correspondence with a system of combinatory logic, similar to a cartesian closed category, but with a completely symmetrical set of axioms. Finally, a number of possible practical applications and directions for further research are suggested.
The Impact of the Lambda Calculus in Logic and Computer Science
 BULLETIN OF SYMBOLIC LOGIC
, 1997
"... One of the most important contributions of A. Church to logic is his invention of the lambda calculus. We present the genesis of this theory and its two major areas of application: the representation of computations and the resulting functional programming languages on the one hand and the represent ..."
Abstract

Cited by 24 (0 self)
 Add to MetaCart
One of the most important contributions of A. Church to logic is his invention of the lambda calculus. We present the genesis of this theory and its two major areas of application: the representation of computations and the resulting functional programming languages on the one hand and the representation of reasoning and the resulting systems of computer mathematics on the other hand.
The BoyerMoore Prover and Nuprl: An Experimental Comparison
 LOGICAL FRAMEWORKS
, 1991
"... We use an example to compare the BoyerMoore Theorem Prover and the Nuprl Proof Development System. The respective machine verifications of a version of Ramsey's theorem illustrate similarities and differences between the two systems. The proofs are compared using both quantitative and nonquan ..."
Abstract

Cited by 24 (8 self)
 Add to MetaCart
We use an example to compare the BoyerMoore Theorem Prover and the Nuprl Proof Development System. The respective machine verifications of a version of Ramsey's theorem illustrate similarities and differences between the two systems. The proofs are compared using both quantitative and nonquantitative measures, and we examine difficulties in making such comparisons.
The Theory of Fexprs is Trivial
, 1998
"... . We provide a very simple model of a reflective facility based on the pure calculus, and we show that its theory of contextual equivalence is trivial: two terms in the language are contextually equivalent iff they are ffcongruent. 1. Introduction The thesis of much of programming language seman ..."
Abstract

Cited by 19 (0 self)
 Add to MetaCart
. We provide a very simple model of a reflective facility based on the pure calculus, and we show that its theory of contextual equivalence is trivial: two terms in the language are contextually equivalent iff they are ffcongruent. 1. Introduction The thesis of much of programming language semantics is that the fundamental question about a programming language is its notion of contextual equivalence: which pairs of phrases (M; N) have the property that M and N may be freely substituted for each other in any program context, without changing the behavior of the resulting program [10, 14]. This is a key notion because, for example, any sourcetosource optimization in a compiler (except possibly for a wholeprogram transformation) should produce a term contextually equivalent to the original. In this note, we provide a very simple model of a reflective facility based on the pure calculus, and we show that its theory of contextual equivalence is trivial: two terms in the language ar...
Handling Control
 In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation
, 1993
"... Nonlocal control transfer and exception handling have a long tradition in higherorder programming languages such as Common Lisp, Scheme and ML. However, each language stops short of providing a full and complementary approach  control handling is provided only if the corresponding control oper ..."
Abstract

Cited by 18 (0 self)
 Add to MetaCart
Nonlocal control transfer and exception handling have a long tradition in higherorder programming languages such as Common Lisp, Scheme and ML. However, each language stops short of providing a full and complementary approach  control handling is provided only if the corresponding control operator is firstorder. In this work, we describe handlers in a higherorder control setting. We invoke our earlier theoretical result that all denotational models of control languages invariably include capabilities that handle control. These capabilities, when incorporated into the language, form an elegant and powerful higherorder generalization of the firstorder exceptionhandling mechanism. 1 Introduction Control manipulation in applicative programming languages comes in two flavors. Firstorder control operators allow computations to abort to a dynamically enclosing control context, e.g., Common Lisp's [23, 24] throw and ML's [9, 17] raise. They are invariably accompanied by forms th...
Sassy: A Language and Optimizing Compiler for Image Processing on Reconfigurable Computing Systems
 IN INTERNATIONAL CONFERENCE ON VISION SYSTEMS. 1999. LAS PALMAS DE GRAN CANARIA
, 1999
"... This paper presents Sassy, a singleassignment variant of the C programming language developed in concert with Khoral Inc. and designed to exploit both coarsegrain and negrain parallelism in image processing applications. Sassy programs are written in the Khoros software development environment, ..."
Abstract

Cited by 6 (4 self)
 Add to MetaCart
This paper presents Sassy, a singleassignment variant of the C programming language developed in concert with Khoral Inc. and designed to exploit both coarsegrain and negrain parallelism in image processing applications. Sassy programs are written in the Khoros software development environment, and can be manipulated inside Cantata (the Khoros GUI). The Sassy language supports image processing with true multidimensional arrays, sophisticated array access and windowing mechanisms, and builtin reduction operators (e.g. histogram). At the same time, Sassy restricts C so as to enable compiler optimizations for parallel execution environments, with the goal of reducing data traffic, code size and execution time. In particular, the Sassy language and its optimizing compiler target reconfigurable systems, which are finegrain parallel processors. Recongurable systems consist of fieldprogrammable gate arrays (FPGAs), memories and interconnection hardware, and can be used as inexpensive coprocessors with conventional workstations or PCs. The compiler optimizations needed to generate highly optimal host, FPGA, and communication code, are discussed. The massive parallelism and high throughput of reconfigurable systems makes them wellsuited to image processing tasks, but they have not previously been used in this context because they are typically programmed in hardware description languages such as VHDL. Sassy was developed as part of the Cameron project, with the goal of elevating the programming level for reconfigurable systems from hardware circuits to programming language.
Presented is the Data Independent Accessing Model (DIAM) a
"... complete model for the representing, storing, and retrieving of structured information. DUM is a hierarchy of models formed by the Entity Set Model and three lower modeling levelsthe String Model, the Encoding Model, and the Physical Device Level Model. Data structures and accessing in database sy ..."
Abstract
 Add to MetaCart
complete model for the representing, storing, and retrieving of structured information. DUM is a hierarchy of models formed by the Entity Set Model and three lower modeling levelsthe String Model, the Encoding Model, and the Physical Device Level Model. Data structures and accessing in database systems 111 Data representations and the data independent accessing model The previous two sections of this paper have reviewed the technical progress of information systems and the structuring of information. We now discuss computeroriented representations for structured information and the Data Independent Accessing Model (DIAM) multilevel general description of structured information and representations. The main problem in the field of database systems continues to
unknown title
"... Nonlocal control transfer and exception handling have a long tradition in higherorder programming languages such as Common Lisp, Scheme and ML. However, each language stops short of providing a full and complementary approach — control handling is provided only if the corresponding control operat ..."
Abstract
 Add to MetaCart
Nonlocal control transfer and exception handling have a long tradition in higherorder programming languages such as Common Lisp, Scheme and ML. However, each language stops short of providing a full and complementary approach — control handling is provided only if the corresponding control operator is firstorder. In this work, we describe handlers in a higherorder control setting. We invoke our earlier theoretical result that all denotational models of control languages invariably include capabilities that handle control. These capabilities, when incorporated into the language, form an elegant and powerful higherorder generalization of the firstorder exceptionhandling mechanism. 1