Results 1  10
of
10
Erratic Fudgets: A Semantic Theory for an Embedded Coordination Language
 SCIENCE OF COMPUTER PROGRAMMING
, 2003
"... The powerful abstraction mechanisms of functional programming languages provide the means to develop domainspecific programming languages within the language itself. Typically, this is realised by designing a set of combinators (higherorder reusable programs) for an application area, and by constr ..."
Abstract

Cited by 24 (3 self)
 Add to MetaCart
The powerful abstraction mechanisms of functional programming languages provide the means to develop domainspecific programming languages within the language itself. Typically, this is realised by designing a set of combinators (higherorder reusable programs) for an application area, and by constructing individual applications by combining and coordinating individual combinators. This paper is concerned with a successful example of such an embedded programming language, namely Fudgets, a library of combinators for building graphical user interfaces in the lazy functional language Haskell. The Fudget library has been used to build a number of substantial applications, including a web browser and a proof editor interface to a proof checker for constructive type theory. This paper develops a semantic theory for the nondeterministic stream processors that are at the heart of the Fudget concept. The interaction of two features of stream processors makes the development of such a semantic theory problematic: (i) the sharing of computation provided by the lazy evaluation mechanism of the underlying host language, and (ii) the addition of nondeterministic choice needed to handle the natural concurrency that reactive applications entail We demonstrate that this combination of features in a higherorder functional language can be tamed to provide a tractable semantic theory and induction principles suitable for reasoning about contextual equivalence of Fudgets.
Algebraic Approaches to Nondeterminism  an Overview
 ACM Computing Surveys
, 1997
"... this paper was published as Walicki, M.A. and Meldal, S., 1995, Nondeterministic Operators in Algebraic Frameworks, Tehnical Report No. CSLTR95664, Stanford University ..."
Abstract

Cited by 24 (3 self)
 Add to MetaCart
this paper was published as Walicki, M.A. and Meldal, S., 1995, Nondeterministic Operators in Algebraic Frameworks, Tehnical Report No. CSLTR95664, Stanford University
Adequacy of compositional translations for observational semantics
 INTERNATIONAL CONFERENCE ON THEORETICAL COMPUTER SCIENCE
, 2008
"... We investigate methods and tools for analyzing translations between programming languages with respect to observational semantics. The behavior of programs is observed in terms of may and mustconvergence in arbitrary contexts, and adequacy of translations, i.e., the reflection of program equivalenc ..."
Abstract

Cited by 11 (8 self)
 Add to MetaCart
(Show Context)
We investigate methods and tools for analyzing translations between programming languages with respect to observational semantics. The behavior of programs is observed in terms of may and mustconvergence in arbitrary contexts, and adequacy of translations, i.e., the reflection of program equivalence, is taken to be the fundamental correctness condition. For compositional translations we propose a notion of convergence equivalence as a means for proving adequacy. This technique avoids explicit reasoning about contexts, and is able to deal with the subtle role of typing in implementations of language extensions.
Filter Models for ConjunctiveDisjunctive λcalculi
, 1996
"... The distinction between the conjunctive nature of nondeterminism as opposed to the disjunctive character of parallelism constitutes the motivation and the starting point of the present work. λcalculus is extended with both a nondeterministic choice and a parallel operator; a notion of reduction i ..."
Abstract

Cited by 11 (6 self)
 Add to MetaCart
The distinction between the conjunctive nature of nondeterminism as opposed to the disjunctive character of parallelism constitutes the motivation and the starting point of the present work. λcalculus is extended with both a nondeterministic choice and a parallel operator; a notion of reduction is introduced, extending fireduction of the classical calculus. We study type assignment systems for this calculus, together with a denotational semantics which is initially defined constructing a set semimodel via simple types. We enrich the type system with intersection and union types, dually reflecting the disjunctive and conjunctive behaviour of the operators, and we build a filter model. The theory of this model is compared both with a Morrisstyle operational semantics and with a semantics based on a notion of capabilities.
Making Choices Lazily
 Proc. FPCA'95, ACM
, 1995
"... We present a natural semantics that models the untyped, normal order calculus plus McCarthy's amb in the context of callbyneed parameter passing. This results in a singular semantics for amb. Previous work on singular choice has concentrated on erratic choice, a less interesting nondetermin ..."
Abstract

Cited by 9 (3 self)
 Add to MetaCart
We present a natural semantics that models the untyped, normal order calculus plus McCarthy's amb in the context of callbyneed parameter passing. This results in a singular semantics for amb. Previous work on singular choice has concentrated on erratic choice, a less interesting nondeterministic choice operator, and only in relation to callby value parameter passing, or callbyname restricted to deterministic terms. The natural semantics contains rules for both convergent and divergent behaviour, allowing it to distinguish programs that dier only in their divergent behaviour. As a result, it is more discriminating than current domaintheoretic models. This, and the fact that it models singular amb, makes the natural semantics suitable for reasoning about lazy, functional languages containing McCarthy's amb. 1 Introduction The need for nondeterminism in functional programming is apparent. There are parallel algorithms that are inherently nondeterministic, deterministic para...
NonDeterminism in a Functional Setting (Extended Abstract)
 In Proceedings 8th LICS
, 1993
"... ) C.H. Luke Ong Computer Laboratory, University of Cambridge, Pembroke Street, CB2 3QG England. Email: Luke.Ong@cl.cam.ac.uk and discs, National University of Singapore. Abstract The pure untyped Lambda Calculus augmented with an (erratic) choice operator is considered as an idealised nondeter ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
) C.H. Luke Ong Computer Laboratory, University of Cambridge, Pembroke Street, CB2 3QG England. Email: Luke.Ong@cl.cam.ac.uk and discs, National University of Singapore. Abstract The pure untyped Lambda Calculus augmented with an (erratic) choice operator is considered as an idealised nondeterministic functional language. Both the "may" and the "must" modalities of convergence are of interest to us. Following Abramsky's work on domain theory in logical form, we identify the denotational type that captures our computational situation: ffi = P[[ffi ! ffi ] ? ] where P[\Gamma] is the Plotkin powerdomain functor. We then carry out a systematic programme which hinges on three distinct interpretations of ffi , namely, processtheoretic, denotational and logical. The main theme of our programme is the complementarity of the various interpretations of ffi . This work may be seen as a step towards a reapprochement between the algebraic theory of processes in Concurrency on the one hand, ...
Natural Semantics for NonDeterminism
, 1993
"... We present a natural semantics for the untyped lazy calculus plus McCarthy's amb, a nondeterministic choice operator. The natural semantics includes rules for both convergent behaviour (dened inductively) and divergent behaviour (dened coinductively). This semantics is equivalent to a smal ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
We present a natural semantics for the untyped lazy calculus plus McCarthy's amb, a nondeterministic choice operator. The natural semantics includes rules for both convergent behaviour (dened inductively) and divergent behaviour (dened coinductively). This semantics is equivalent to a small step reduction semantics that corresponds closely to our operational intuitions about McCarthy's amb. We present equivalences for convergent and divergent behaviour based on the natural semantics and prove a Context Lemma for the convergence equivalence. We then give a theory l 8 , based on the equivalences for convergent and divergent behaviour. Since it is able to distinguish between programs that dier only in their divergent behaviour, the theory is more discriminating than equational theories based on current domaintheoretic models. It is therefore more suitable for reasoning about functional programs containing McCarthy's amb. Contents 1 Introduction 2 2 Related Work 3 3 ...
Observational Program Calculi and the Correctness of Translations
, 2013
"... Motivated by our experience in analyzing properties of translations between programming languages with observational semantics, this paper clarifies the notions, the relevant questions, and the methods, constructs a general framework, and provides several tools for proving various correctness proper ..."
Abstract
 Add to MetaCart
Motivated by our experience in analyzing properties of translations between programming languages with observational semantics, this paper clarifies the notions, the relevant questions, and the methods, constructs a general framework, and provides several tools for proving various correctness properties of translations like adequacy and full abstractness. The presented framework