Results 1 -
2 of
2
A Fully Abstract Semantics for a Concurrent Functional Language With Monadic Types
, 1995
"... This paper presents a typed higher-order concurrent functional programming language, based on Moggi's monadic metalanguage and Reppy's Concurrent ML. We present an operational semantics for the language, and show that a higherorder variant of the traces model is fully abstract for maytesting. This p ..."
Abstract
-
Cited by 20 (4 self)
- Add to MetaCart
This paper presents a typed higher-order concurrent functional programming language, based on Moggi's monadic metalanguage and Reppy's Concurrent ML. We present an operational semantics for the language, and show that a higherorder variant of the traces model is fully abstract for maytesting. This proof uses a program logic based on Hennessy-- Milner logic and Abramsky's domain theory in logical form. 1 Introduction This paper presents an operational semantics for a concurrent functional programming language, based on Reppy's [26, 27] Concurrent ML, and Moggi's [22] monadic metalanguage. CML is a concurrent extension of New Jersey ML, which adds communication primitives based on CCS [19] and CSP [11]. Reppy introduces a new type constructor of events, which can spawn concurrent processes, and communicate with them along channels. Three of the constructors for the event type are: always : a#aevent wrap : (aeventa#b)# (bevent) sync : aevent#a These are: . alwayse is an event whic...
A Fully Abstract Semantics for a Nondeterministic Functional Language With Monadic Types
, 1995
"... This paper presents a functional programming language, based on Moggi's monadic metalanguage. In the first part of this paper, we show how the language can be regarded as a monad on a category of signatures, and that the resulting category of algebras is equivalent to the category of computationally ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
This paper presents a functional programming language, based on Moggi's monadic metalanguage. In the first part of this paper, we show how the language can be regarded as a monad on a category of signatures, and that the resulting category of algebras is equivalent to the category of computationally cartesian closed categories. In the second part, we extend the language to include a nondeterministic operational semantics, and show that the lower powerdomain semantics is fully abstract for may-testing. 1 Introduction Moggi has proposed strong monads as an appropriate way to model computation. In [9], he shows that any model of computation satisfying certain equations forms a strong monad. His work concentrates on the denotational properties of programs, whereas we shall show how his work can be applied to an operational semantics. In the first section of this paper, we present a slight variant on his functional monadic metalanguage and show that its algebras are equivalent to strong mo...

