Results 1 
5 of
5
Programming interfaces and basic topology
 Annals of Pure and Applied Logic
, 2005
"... A pattern of interaction that arises again and again in programming, is a “handshake”, in which two agents exchange data. The exchange is thought of as provision of a service. Each interaction is initiated by a specific agent —the client or Angel, and concluded by the other —the server or Demon. We ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
A pattern of interaction that arises again and again in programming, is a “handshake”, in which two agents exchange data. The exchange is thought of as provision of a service. Each interaction is initiated by a specific agent —the client or Angel, and concluded by the other —the server or Demon. We present a category in which the objects —called interaction structures in the paper — serve as descriptions of services provided across such handshaken interfaces. The morphisms —called (general) simulations— model components that provide one such service, relying on another. The morphisms are relations between the underlying sets of the interaction structures. The proof that a relation is a simulation can serve (in principle) as an executable program, whose specification is that it provides the service described by its domain, given an implementation of the service described by its codomain.
Interactive programs and weakly final coalgebras (extended version
 Dependently typed programming, number 04381 in Dagstuhl Seminar Proceedings, 2004. Available via http://drops.dagstuhl.de/opus
"... GR/S30450/01. 2 A. Setzer, P. Hancock 1 Introduction According to MartinL"of [19]: "... I do not think that the search for logically ever more satisfactory high level programming languages can stop short of anything but ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
GR/S30450/01. 2 A. Setzer, P. Hancock 1 Introduction According to MartinL"of [19]: "... I do not think that the search for logically ever more satisfactory high level programming languages can stop short of anything but
ObjectOriented Programming in Dependent Type Theory
"... Abstract: We introduce basic concepts from objectoriented programming into dependent type theory based on the idea of modelling objects as interactive programs. We consider methods, interfaces, and the interaction between a fixed number of objects, including selfreferential method calls. We introd ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Abstract: We introduce basic concepts from objectoriented programming into dependent type theory based on the idea of modelling objects as interactive programs. We consider methods, interfaces, and the interaction between a fixed number of objects, including selfreferential method calls. We introduce a monad like syntax for developing objects in dependent type theory. 1.1
Pierre Hyvernat
"... this report is to show how one can use dependent types to de ne and typecheck interactive programs. The idea is similar to the use of monads to model input output in Haskell. In particular, it allows to give a very precise semantics to interactive programs; but here, the dependent typing allows mu ..."
Abstract
 Add to MetaCart
this report is to show how one can use dependent types to de ne and typecheck interactive programs. The idea is similar to the use of monads to model input output in Haskell. In particular, it allows to give a very precise semantics to interactive programs; but here, the dependent typing allows much more
Chapter 1 Coalgebras as Types determined by their Elimination Rules
"... Abstract We develop rules for coalgebras in type theory, and give meaning explanations for them. We show that elements of coalgebras are determined by their elimination rules, whereas the introduction rules can be considered as derived. This is in contrast with algebraic data types, for which the op ..."
Abstract
 Add to MetaCart
Abstract We develop rules for coalgebras in type theory, and give meaning explanations for them. We show that elements of coalgebras are determined by their elimination rules, whereas the introduction rules can be considered as derived. This is in contrast with algebraic data types, for which the opposite is true: elements are determined by their introduction rules, and the elimination rules can be considered as derived. In this sense, the function type from the logical framework is more like a coalgebraic data type, the elements of which are determined by the elimination rule. We illustrate why the simplest form of guarded recursion is nothing but the introduction rule originating from the formulation of coalgebras in category theory. We discuss restrictions needed in order to preserve decidability of equality. Dedicated to Per MartinLöf on the occasion of his retirement. 1.1