| John Reppy. Higher-Order Concurrency. PhD thesis, Cornell University, June 1992. Tech nical Report TR 92-1285. |
....of wait from its annotated task (T Wait) The typability of a configuration C follows the standard idea of a sanity check that all of the run time entities mentioned in the configuration, via references v, have to be typable under the assumptions that makes of the types of those references (c.f. [21]) Definition 4.5. A closed, well behaved configuration C is called well typed with respect to an environment , written C, if for all v 2 dom(C) indeed C(v) v) For subject reduction, we further need a series of standard lemmas, which we present without proofs, that allow us to manipulate ....
John Reppy. Higher-Order Concurrency. PhD thesis, Cornell University, June 1992. Technical Report TR 92-1285.
....multiple possible continuations eligible, each guarded by some associated event. When an external event is observed, the thread s mixed state snaps or resolves itself into a single continuation, and the thread can then evolve forward. 2 6 This event model is similar to the one employed by CML [CML], but it exposes what in CML is the underlying canonical event structure. This means that when the programmer wishes to discriminate between two different events, instead of encoding the difference by tagging the events with wrap operators, and then discriminating on the tags, he can directly ....
....tool for use in an actual operating system. Dybvig has reported on nested engines, a similar concept for providing preemptable schedulers in Scheme [Engines] A recent release of Scheme 48 [S48] uses a variant of these engines for its thread package. Reppy s doctoral work on Concurrent ML [CML] provided a concurrency mechanism based on synchronous sequential processes, although Reppy did not consider problems of virtualisation. Reppy has also reported on the nature of continuations in a system with asynchronous interrupts [AsyncCont] Philbin s doctoral work [Philbin, STNG] on the ....
John H. Reppy. Higher Order Concurrency. PhD Dissertation, Cornell University, 1992.
....to the agent through a shared reference. Essentially, the notion of host free must be extended to account for terms reachable through references. With references and recursive types, we expect that our results could be extended to handle threads in the style of those in Reppy s doctoral thesis [17]. Such scalability is due to the similarity of our proofs to standard subject reduction, as popularized by Wright and Felleisen [24] Namely, a property of interest is shown to be invariant during evaluation. Although these syntactic techniques yield weaker results than semantic accounts of ....
John Hamilton Reppy. Higher-order Concurrency. PhD thesis, Cornell University, Ithaca, NY, June 1992. TR 92-1852.
....EPP. In the Tiny Data Parallel Java language, some methods are identified as data parallel methods and translated by EPP in JAVA multi threaded codes, executed on a large number of virtual processors. Demaine [13] describes the design of a JAVA package that implements the main features of Reppy s [40] Higher Order Concurrency extension to the basic CSP model by Hoare [20] In this extension, communication algorithms (or events) are first class objects and can be created and manipulated dynamically. In addition, threads are automatically garbage collected and channels are first class, that is, ....
John H. Reppy. Higher-order concurrency, June 1992.
....network as necessary without needing to change language. We have also developed a more sophisticated model of controlling user events in a multithreaded environment. Another multithreaded graphical user interface residing on similar principals to our approach, although not explicitly, is eXene[51], developed in Concurrent ML(CML) This is an extension of Pegasus[39] written in PML, a predecessor of CML. Before describing eXene and Pegasus, I ll briefly describe CML. CML is an extension of Standard ML and is implemented on top the SML NJ compiler, a continuation passing style compiler ....
John H. Reppy. Higher-Order Concurrency. PhD thesis, Cornell University, 1992.
.... and motivation in that regard, please see [3,4,5,6,9] Justifications will be made about particular primitives and how they are implemented, since we chose to make no change to the syntax of Standard ML, and simply provide the extensions as an ML module, in the same manner as Concurrent ML[11,12]. The current implementation has been built for the Fujitsu AP1000, a distributed memory multicomputer. The primary modifications made to the compilation system (SML2C or SML NJ) were to extend the runtime system to enable access to the AP1000 s task creation and interprocessor communication ....
John Reppy, "Higher--Order Concurrency," Ph.D Thesis, Dept. Comp. Sci., Cornell University, (June 1992).
....a shared reference. We have proven stateful analogs of the Value Abstraction and comes from open lemmas; see the companion technical report [20] With references and recursive types, we expect that our results could be extended to handle threads in the style of those in Reppy s doctoral thesis [14]. Such scalability is due to the similarity of our proofs to standard subject reduction, as popularized by Wright and Felleisen [19] Namely, a property of interest is (types) # : t b # 1 # # 2 (labels) # i : i # i : # j (i terms) e i : x i c #x i :#.e i e i e # i ....
John Hamilton Reppy. Higher-order Concurrency. PhD thesis, Cornell University, Ithaca, NY, June 1992. TR 92-1852.
....these threads. A denotational model for the language is presented where denotations correspond to computations of values rather than simply values. It is shown to be fully abstract with respect to a behavioural preorder based on contextual testing. 1 Introduction The language Concurrent ML (CML) [18], is one of a number of recent languages which seeks to combine aspects of functional and concurrent programming. Standard ML, 19] is augmented with the ability to spawn off new independent threads of computation. Further constructs are added to enable these threads to synchronise and exchange ....
....types, CML is a sophisticated language. Although it has been implemented there has been very little work on its semantic foundations. There have been a number of attempts at giving an operational semantics, usually in terms of a reduction relation, to core subsets of the language. For example in [18, 2] the core language cv is given a two level operational semantics which results in a reduction relation between multi sets of language expressions. We aim to extend this type of work in order to build more abstract semantic theories, encompassing both behavioural equivalences and denotational ....
[Article contains additional citation context not shown here]
John Reppy. Higher-Order Concurrency. PhD thesis, Cornell University, June 1992. Technical Report TR 92-1285.
....respectively. Several send side [receive side] add messages with the same source and destination may accumulate in the list, and are individually removed by matching receive side [send side] add messages. We have used this membership protocol in two implementations of higher order concurrency [17], on top of Java [5] and PVM [6] In the latter implementation, we exploited the following fact: the membership protocol can be modified to allow processes to pack channel names into a buffer, and have this buffer travel through several processes before it is unpacked. This is achieved by ....
John H. Reppy. Higher-order concurrency. PhD thesis, Dept. of Computer Science, Cornell University, June 1992. 16 Erik D. Demaine
....in such programs. 1 Introduction Substantial interest in concurrent programming languages has recently developed. This has resulted in a variety of systems, such as Concurrent ML (based on higher order concurrency) and occam (based on CSP) In this paper we focus on higher order concurrency [13], an extension of Hoare s basic CSP model [10, 11] Briefly, CSP provides message passing by basic send and receive primitives. They are synchronous in that the send receive operations wait for matching receive sends to continue. The destination or source passed to one of these primitives is ....
....They effectively correspond to the port abstraction, that is, one of several message queues on a particular process, but are much more convenient to program with. The non deterministic choice operation does one out of a list of sends and receives, whichever has a matching partner first. Reppy [13] proposed an extension to the basic CSP model called higher order concurrency. One way to view this extension is that synchronous communication operations, which we call events, can be more than just a send, a receive, or a choice of sends and receives. Rather, an event could consist of doing ....
[Article contains additional citation context not shown here]
John H. Reppy. Higher-order concurrency. PhD thesis, Dept. of Computer Science, Cornell University, June 1992.
....race is mediated by a single lock, which is created by the sync operation and distributed to all the individual receiver clauses. It is important to distinguish the description of a choice from the running choice process that is created when sync is applied to this description. Following Reppy [Rep92, Rep88, Rep91], we call the description of a choice an event. The operation takes two events and creates a new event that, when it receives its lock, transmits it to both component events. def ( e1, e2] abs lock e1 lock e2 lock end The sync operation takes an event and triggers it with a freshly ....
....the original sender on c cannot observe when the value it sent is recieved, we may safely perform a receive, check whether we actually want the value, and resend it if not. The identifiers sync, and form part of an events library, which provides selective communication in the style of CML [Rep92, Rep88, Rep91]. 6.3 Multi State Objects For most of the examples we have considered so far, locks and choice can be used to build implementations of comparable clarity. The explicit locking idiom, being closer to the base language, is more efficient for these examples. However, the more powerful choice ....
John Reppy. Higher-Order Concurrency. PhD thesis, Cornell University, June 1992. Technical Report TR 92-1285.
....= Signal type Number = AckReq Signal] def zero [n:Number] Create a proc representing 0 located at n def succ [m:Number n:Number] Create a proc representing m 1 at n def plus [m:Number n:Number o:Number] etc. Solution on page 100. 10.4 Programming with Events John Reppy [Rep92, Rep90, Rep88, Rep91, Rep95] has argued that the programming facilities offered by the pure Gammapi calculus and many related concurrent programming languages are inadequate in an important way: they provide insufficient support for abstraction in concurrent code. The main culprit is the ....
John Reppy. Higher-Order Concurrency. PhD thesis, Cornell University, June 1992. Technical Report TR 92-1285.
....Email: Peter.Sewell cl.cam.ac.uk Some of the discussion and technical work is necessarily specific to Pict. Much, however, should be applicable to other concurrent programming languages that do not prescribe a particular implementation scheduling strategy, for example Facile [TLK96] CML [Rep92], Concurrent Haskell [JGF96] and the Join calculus [FG96] To define what is a correct abstract machine one must specify the required relationship between the LTS semantics of programs, as given by a calculus structured operational semantics, and their behaviour when executed. It is thus an ....
John Hamilton Reppy. Higher-Order Concurrency. PhD thesis, Cornell University, June 1992. Technical Report TR 92-1285.
No context found.
John Reppy. Higher-Order Concurrency. PhD thesis, Cornell University, June 1992. Tech nical Report TR 92-1285.
No context found.
John H. Reppy. Higher-order concurrency. PhD thesis, Cornell University, Ithaca, NY, 1992. Technical Report TR 92-1285.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC