Results 11  20
of
22
Abstract Models of Storage
, 2000
"... This note is a historical survey of Christopher Strachey's influence on the development of semantic models of assignment and storage management in procedural languages. ..."
Abstract

Cited by 8 (0 self)
 Add to MetaCart
This note is a historical survey of Christopher Strachey's influence on the development of semantic models of assignment and storage management in procedural languages.
A Fully Abstract Model for Sequential Computation
, 1998
"... In 1977, G. Plotkin pointed out the problem of finding a fully abstract model for the sequential programming language PCF [16], which had been originally developed by D. Scott [19]. This question turned out to be one of the most enduring problems of semantics. A very nice description of the differen ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
In 1977, G. Plotkin pointed out the problem of finding a fully abstract model for the sequential programming language PCF [16], which had been originally developed by D. Scott [19]. This question turned out to be one of the most enduring problems of semantics. A very nice description of the different approaches
Toward Application Driven Software Technology
"... process semantics Current problem solving methodology by computers requires application domain expert to develop programs in a programming language. Software tools designed to ease this task and the expansion of computer use in practically all aspects of human life lead to an increasing software com ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
process semantics Current problem solving methodology by computers requires application domain expert to develop programs in a programming language. Software tools designed to ease this task and the expansion of computer use in practically all aspects of human life lead to an increasing software complexity. In this paper we present a solution to the problems resulting from increasing software complexity by developing a methodology for problem solving with the computer where problem solving process is split between application domain expert and software expert as follows: (1) AD expert develops solution algorithms using the natural language of the application domain; (2) IT expert implements universal algorithms that characterize the application domain; (3) the AD is provided with an interpreter that implements AD algorithms in terms of the processes implementing the components of the AD algorithms. This is realized by Computational Emancipation of the Application Domain, (CEAD). Here we illustrate these ideas using linear algebra as application domain. 1. Applicationdriven problem solving methodology Throughout the problem solving process, problem solvers manipulate concepts from their domain of interest (problem domain) to form problem solutions. The invention of computers allowed the problem solving process to evolve so that computers could be used as problem solving tools [Scr97], [LM97]. We now see problem solutions as complex processes which can be carried out by the digital computer. But current methodology of computer use for problem
The Analysis of Programming Structure
 ACM SIGACT News
, 1997
"... This paper has explored three examples of good semantical analyses of programming structures. The three examples share two characteristics: the semantic models are abstract enough to be applicable in many situations, and the models lead to proofs of noncomputability. Other examples of programming s ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
This paper has explored three examples of good semantical analyses of programming structures. The three examples share two characteristics: the semantic models are abstract enough to be applicable in many situations, and the models lead to proofs of noncomputability. Other examples of programming structures have been omitted from this short essay: foundations for objectoriented languages, descriptions of languages with local variables, and the theory of database query languages. Each of these examples have corresponding semantical theories that enjoy the two characteristics above. The richness of programming structure suggests a corollary: it is folly to look for one universal model to explain all programming structures. Of course, as a theoretical subject, semantics benefits from the reduction of many concepts to a primitive, common level. Nevertheless, reduction must often be resisted. We have seen how computability theory loses all kinds of relevant distinctions. Another example is the naive semantics of PCF based on dcpos: the model is not abstract enough,
An AutomataTheoretic Model of Idealized Algol
"... Abstract. In this paper, we present a new model of classbased Algollike programming languages inspired by automatatheoretic concepts. The model may be seen as a variant of the ”objectbased ” model previously proposed by Reddy, where objects are described by their observable behaviour in terms of ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Abstract. In this paper, we present a new model of classbased Algollike programming languages inspired by automatatheoretic concepts. The model may be seen as a variant of the ”objectbased ” model previously proposed by Reddy, where objects are described by their observable behaviour in terms of events. At the same time, it also reflects the intuitions behind statebased models studied by Reynolds, Oles, Tennent and O’Hearn where the effect of commands is described by state transformations. The idea is to view stores as automata, capturing not only their states but also the allowed state transformations. In this fashion, we are able to combine both the statebased and eventbased views of objects. We illustrate the efficacy of the model by proving several test equivalences and discuss its connections to the previous models. 1
Interactive Computation: Stepping Stone in the Pathway From Classical to Developmental Computation ∗
"... This paper reviews and extends previous work on the domaintheoretic notion of Machine Development. It summarizes the concept of Developmental Computation and shows how Interactive Computation can be understood as a stepping stone in the pathway from Classical to Developmental Computation. A critica ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
This paper reviews and extends previous work on the domaintheoretic notion of Machine Development. It summarizes the concept of Developmental Computation and shows how Interactive Computation can be understood as a stepping stone in the pathway from Classical to Developmental Computation. A critical appraisal is given of Classical Computation, showing in which ways its shortcomings tend to restrict the possible evolution of real computers, and how Interactive and Developmental Computation overcome such shortcomings. A formal conceptual framework is sketched, in order to frame the future development of the formal theory of Developmental Computation. Finally, the current frontier of the work on Developmental Computation is briefly exposed. 1
Developing Theories of Types and Computability
, 1999
"... Introduction Domain Theory, type theory (both in the style of MartinLof [40, 41] and in the polymorphic style of Girard/Reynolds [23, 56]), and topos theory (both in the topological/sheaftheoretic treatments and in the realizability approach going back to the early work of Kleene) have attempted ..."
Abstract
 Add to MetaCart
Introduction Domain Theory, type theory (both in the style of MartinLof [40, 41] and in the polymorphic style of Girard/Reynolds [23, 56]), and topos theory (both in the topological/sheaftheoretic treatments and in the realizability approach going back to the early work of Kleene) have attempted to improve on set theory by providing a large suite of closure conditions on domains/types/objects as well as a farreaching logic of properties emphasizing the computable/constructive aspects of the definitions and qualities of functions. Scott's domain theory, (and the many variations proposed and studied; see [2] and [75] for recent introductions with references) has been especially successful in allowing for recursive definitions of types (i.e., solutions to domain equations) but at the expense of introducing a complex structure of "partial elements" in order to have solutions to fixedpoint equations in the domains. Moreover, the topological and e
Logic Column 6
"... Types Peter W. O'Hearn Department of Computer Science Queen Mary & Westfield College (ohearn@dcs.qmw.ac.uk) October 7, 1998 1 Introduction Abstraction is one of the pillars of computer science. Of course, choosing the right concepts to emphasize, and details to suppress, is crucial in all of scie ..."
Abstract
 Add to MetaCart
Types Peter W. O'Hearn Department of Computer Science Queen Mary & Westfield College (ohearn@dcs.qmw.ac.uk) October 7, 1998 1 Introduction Abstraction is one of the pillars of computer science. Of course, choosing the right concepts to emphasize, and details to suppress, is crucial in all of science, but in computer science the role of abstraction extends beyond that of sensible methodology. For in computing we have seen the emergence of an array of constructs and methods whose chief purpose is to provide general mechanisms for achieving, validating, or enforcing abstraction, rather than being specific instances or examples of it. Among these are programming concepts such as objects, procedures, abstract data types and modules, and mathematical methods such as simulation and logical relations. But what, more precisely, is the "abstraction" achieved by these constructs? In the case of procedural abstraction, a more or less satisfactory explanation can be given in terms of functions....
An Indexed Model of Impredicative Polymorphism and Mutable References
, 2003
"... We present a semantic model of the polymorphic lambda calculus augmented with a higherorder store, allowing the storage of values of any type, including impredicative quantified types, mutable references, recursive types, and functions. Our model provides the first denotational semantics for a type ..."
Abstract
 Add to MetaCart
We present a semantic model of the polymorphic lambda calculus augmented with a higherorder store, allowing the storage of values of any type, including impredicative quantified types, mutable references, recursive types, and functions. Our model provides the first denotational semantics for a type system with updatable references to values of impredicative quantified types. The central idea behind our semantics is that instead of tracking the exact type of a mutable reference in a possible world our model keeps track of the approximate type. While highlevel languages like ML and Java do not themselves support storage of impredicative existential packages in mutable cells, this feature is essential when representing ML function closures, that is, in a target language for typed closure conversion of ML programs. 1