12 citations found. Retrieving documents...
Ciaran McHale. (1994). "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritance", PhD. Thesis, Department of Computer Science, Trinity college, University of Dublin, Ireland.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Responsive Bisimulation - Zhang, Potter   (Correct)

.... model concurrent objects ( Walker95, Jones93, Sangi96, H uttel96, Zhang97] Some researchers ( Schne97, Zhang98a, Zhang98b] have also applied it to model compositional concurrent objects in the aspect oriented programming style ( Aksit92, Holmes97] attempting to avoid the inheritance anomaly [McHale94] One of the important issues with such models is to identify the similarity between composed behaviours and the expected behaviour. There are many known bisimulation techniques available for various purposes. For example, the weak ground bisimulation and many others recognise equivalence of ....

....OO systems, the delay in delivery is neither visible nor controllable for either sender or receiver. The responsive bisimulation, on the other hand, is quite natural for compositional objects since it concentrates on the delay of input, which is controllable by the receiver, and as pointed out by [McHale94] and [Zhang98b] can provide a synchronisation control point for the behavioural composition of objects. The Ctrl and Ctrl in Figure 1 are examples of these kind of controls. Asynchronous and responsive bisimulations overlap, but neither contains the other. For example, the processes t ....

Ciaran McHale. (1994). "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritance", PhD. Thesis, Department of Computer Science, Trinity college, University of Dublin, Ireland.


Beyond Objects: Components - Meijler, Nierstrasz (1998)   (15 citations)  (Correct)

....In Ada 95 and Eiffel, on the other hand, generic classes are well integrated into the language, and can be independently type checked and compiled. Being a special form of parameterization, genericity can be viewed as separating the variability of a software component from that component. McHale [29] has shown that genericity can be used in concurrent object oriented programming languages to separate the programming of the synchronization control from the normal programming of the methods. McHale provides many examples of generic synchronization policies that can be independently ....

.... applicable to both kinds of approaches is that neither supports higher order (generic) parameterization: Non functional behaviour is still inherently described for a specific class (and, of course for its superclasses) and is not a generic mechanism (cf. generic synchronization mechanisms [29], section 3.4) that can be parameterized by a class or by some cooperating classes. We note however, that the aspect oriented approach seems to allow for that in principle, since it is based on software generation. 4 Requirements for a Composition Environment We have argued that the development ....

[Article contains additional citation context not shown here]

Ciaran McHale, "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritance," Ph.D. Dissertation, Department of Computer Science, Trinity College, Dublin, 1994.


Aspects of Synchronisation - Holmes, Noble, Potter (1998)   (2 citations)  (Correct)

....of object orientation: encapsulation, re use and modularity. This interference is particularly noticeable with regard to re use, where conflict between concurrency and re use by inheritance led to the definition of the inheritance anomaly [Mat90] and subsequent investigation of its nature [Mat93, Ber94, McH94]. Many early concurrent object oriented languages introduced concurrency and synchronisation without concern for their interaction with inheritance, nor for issues of flexibility and re use. As problems with inheritance were uncovered and re use became more important, various attempts were made ....

....thus be re useable in different contexts. However, the synchronisation patterns given as examples rely on access to state information in either the behavioural or structural blocks. As such, these patterns seem to be tightly coupled to the other blocks and not amenable to re use; a view shared by [McH94]. McHale [McH94] is a strong advocate of separation and insists that separation should not only be between the functional and synchronisation code, but also between the data they use. This is provided in the Service Object Synchronisation Paradigm. This decoupling increases the potential for ....

[Article contains additional citation context not shown here]

McHale C., "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritance", Ph.D. dissertation, Dept. of Computer Science, University of Dublin, Trinity College, October 1994


Synchronisation Rings - Composable Synchronisation for.. - Holmes (1999)   (Correct)

....and which are writers) to ensure interference does not occur. The existence of multiple active threads of control within a single object is known as intra object concurrency. 2.2.3 Passive Objects In the most basic sense passive objects are simply not active ones. In passive object systems [Baq95, Gol83, Gos96, McH94, Mit95, Str91], objects do not have internal message processing threads, rather their methods are invoked directly by external threads of control. These threads of control represent the activities of the system and these activities interact and communicate by manipulating shared objects. Of course not all ....

....contains one or more threads of control responsible for receiving and processing messages. In these systems synchronisation involves examining the next message and determining if the object is prepared to accept and process that message. In passive object languages, such as Java [Gos96] ESP [McH94] and TAO [Mit95] there is no explicit act of receiving a message as sending, receiving and processing a message is usually done with procedure calls, thus the first stage of method execution (either implicitly or explicitly) involves a call to synchronisation code to check if this message can ....

[Article contains additional citation context not shown here]

McHale C., "Synchronisation in Concurrent, Object-Oriented Languages: Expressive Power, Genericity and Inheritance", Ph.D. Dissertation, Department of Computer Science, University of Dublin, Trinity College, October 1994


Concurrency, Synchronisation and Objects - Holmes (1999)   (Correct)

....and which are writers) to ensure interference does not occur. The existence of multiple active threads of control within a single object is known as intra object concurrency. 2.2.3 Passive Objects In the most basic sense passive objects are simply not active ones. In passive object systems [Baq95, Gol83, Gos96, McH94, Mit95, Str91], objects do not have internal message processing threads, rather their methods are invoked directly by external threads of control. These threads of control represent the activities of the system and these activities interact and communicate by manipulating shared objects. Of course not all ....

....contains one or more threads of control responsible for receiving and processing messages. In these systems synchronisation involves examining the next message and determining if the object is prepared to accept and process that message. In passive object languages, such as Java [Gos96] ESP [McH94] and TAO [Mit95] there is no explicit act of receiving a message as sending, receiving and processing a message is usually done with procedure calls, thus the first stage of method execution (either implicitly or explicitly) involves a call to synchronisation code to check if this message can ....

[Article contains additional citation context not shown here]

McHale C., "Synchronisation in Concurrent, Object-Oriented Languages: Expressive Power, Genericity and Inheritance", Ph.D. Dissertation, Department of Computer Science, University of Dublin, Trinity College, October 1994


Implementation of "Generic Synchronization Policies" in Pict - Varone (1996)   (3 citations)  (Correct)

....address: Institut fr Informatik (IAM) Universitt Bern, Neubrckstrasse 10, CH 3012 Berne, Switzerland. E mail: scg iam.unibe.ch. WWW: http: iamwww.unibe.ch scg. 1 Introduction This report presents an implementation of the Generic Synchronization Policies (abbreviated as GSP) introduced in [4] using the language Pict. The main goal of this work was to see how well suited Pict is for implementing higher level abstractions. The remainder of this report is structured as follows: Section 2 briefly introduces the GSP concept. Pict [6] 7] 8] and a possible object model are presented in ....

....and normal Courier for keywords, separators and operators. 2 Generic Synchronization Policies 2.1 Definition This section briefly describes the GSP concept. We will not present the underlying Service object Synchronization paradigm (Sos) in detail. For more information on Sos please refer to [4]. In what follows we assume that communication between objects is carried out by Remote Procedure Calls (RPC) that is a process invoking an operation of an object will be suspended until the operation is finished (and the possible return value accessible) However, it is important to note that ....

[Article contains additional citation context not shown here]

Ciaran McHale, "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritance," Ph.D. Dissertation, Department of Computer Science, Trinity College, Dublin, 1994.


Research Topics in Software Composition - Nierstrasz (1995)   (6 citations)  (Correct)

....Object Calculus, it seems, would merge the operational features of a process calculus with the compositional features of the l calculus. Recent progress in process calculi, in fact, have addressed many of the obstacles in developing an adequate object calculus [16] 19] and an asynchronous variant [8] of the higher order p calculus [23] appears in many ways to provide a suitable foundation: objects can be modelled as concurrent processes [22] and software abstractions (components) can be viewed as higher order abstractions over the process space. Because a composition language will cut ....

....suggests a need for an evolutionary software life cycle and corresponding methods. A composition language would support an integrated object component model based on a rigorous semantic foundation. Such a foundation or object calculus could well be based on a variant of the p calculus [8][16] 22] 23] Challenges for such a language include the modeling of the foundational software abstractions (components, active objects, etc. the development of an appropriate type system with type inference, support for interoperability with existing languages and component libraries, modeling ....

Ciaran McHale, "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritance," Ph.D. Dissertation, Department of Computer Science, Trinity College, Dublin, 1994.


Effective Synchronisation of Concurrent Objects: Laying.. - Holmes, Noble, Potter (1998)   (Correct)

....active objects then there must also be passive objects objects without their own thread of control, but whose methods are executed in threads of control that originate from other objects. Concurrent object oriented languages exist which support purely active models [Agh87, Lie87] purely passive [Baq95, Gos96, McH94, Mit95, Str91] or a hybrid combination [Act92, Ame87, Car90a, Jal93, Kar92, Loh92, Mey96, Nie92, Yok87] 2 The pure active models were based on the notion of ACTORS [Agh86] but having a process (or thread) per object is simply not a practical on existing hardware systems, thus the OOCP systems tended to move ....

....concurrent interactions, so problems with reuse began to surface. Eventually these reuse issues were studied in more detail and the term inheritance anomaly was coined to describe them [Mat90] Since then nearly all new language proposals have been promoted as solving the inheritance anomaly [Baq95, Ber94, Fer95, Fro92, Lop94, Mat93, McH94, Mit95]; but while they might have avoided one or more of the problems categorised by Matsuoka, they didn t really address all of the issues of reuse. In some cases the quest for reuse seems to have been abandoned altogether [Lop97] While the academic world developed the 98 (and more) concurrent ....

[Article contains additional citation context not shown here]

McHale C., "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, 26 Genericity and Inheritance", Ph.D. Dissertation, Department of Computer Science, University of Dublin, Trinity College, October 1994


A Coordination Component Framework for Open Distributed Systems - Tichelaar (1997)   (2 citations)  (Correct)

....with concurrency. Classes that use a concurrency mechanism are difficult to inherit from without knowing the concurrency details of the superclass. A subclass, for instance, needs access to a mutex in the superclass in order to synchronize its own methods with methods from the superclass. McHale[24] has shown that the cause of this problem lies in conflicts between inheriting sequential code and inheriting synchronization code. He proposes generic synchronization solutions to separate synchronization code from other code. In his thesis many examples can be found of generic synchronization ....

C. McHale, "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritance", Ph.D. Dissertation, Department of Computer Science, Trinity College, Dublin, 1994.


Reflection is the Essence of Cooperation - Edmond, Papazoglou   (Correct)

....operation is to be processed before any Withdraw operation, that is, one has a higher priority than the other. The results of these policy instantiations are held or gathered into the act metaobject they constitute that object. In this regard, our work may be compared to that of McHale [McH95] In that work, he discusses the so called inheritance anomaly in which the mixing of sequential and synchronisation code within the body of a method leaves the resulting class as one that is not reusable because of this mix of code that serves two different purposes. His suggestion is that ....

C. McHale. Synchronisation in Concurrent Object-oriented Languages: Expressive Power, Genericity and Inheritance. PhD thesis, Trinity College, Dublin, 1995.


Using Metaobjects to Model Concurrent Objects with PICT - Lumpe, Schneider, Nierstrasz (1996)   (Correct)

.... and type inference schemes for the p calculus [24] We have been using PICT for modelling traditional object oriented features, such as inheritance and dynamic binding [28] as well as more esoteric abstractions needed for composing concurrent systems, such as generic synchronization policies [13][31] 2.1 The Pierce Turner Basic Object Model Pierce and Turner [26] have outlined a basic model for objects in PICT, in which objects are modelled as a set of persistent processes representing instance variables and methods. The interface of an object is a record 1 containing the channels of ....

....hand it is still an open question how to model other abstractions, such as local method calls, self references and inheritance. 10. Using Metaobjects to Model Concurrent Objects with PICT As an extension to our object model, we have modelled McHale s generic synchronization policies (GSP) [13] as composable concurrent abstraction in PICT. GSPs are reusable specifications of synchronisation policies, such as mutual exclusion , readers writers and so on, that may be bound to the implementation of different object classes. In our first approach, we used a preprocessor to translate GSP ....

Ciaran McHale, "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritance," Ph.D. thesis, Department of Computer Science, Trinity College, Dublin, 1994.


Formalizing Composable Software Systems - A Research Agenda - Nierstrasz, Schneider, Lumpe (1996)   (7 citations)  (Correct)

....have used it to model both traditional object oriented features, such as inheritance and dynamic binding [31] as well as more esoteric abstractions needed for composing concurrent systems, 4. Formalizing Composable Software Systems A Research Agenda such as generic synchronization policies [16][34] We expect these modelling exercises to lead us to (i) an expressive formal model of objects and components, and (ii) a formal language for specifying open systems abstractions at a higher level than the p calculus. Our goal is to define a formal foundation that we can use to design and ....

....can be modelled by copying and modifying intermediate objects of superclasses. This approach follows closely that used by Cook and Palsberg to propagate self reference to a modified client [5] As an extension to our object model, we have modelled McHale s generic synchronization policies (GSP) [16] as composable concurrent abstraction in PICT. GSPs are reusable specifications of synchronisation policies, such as mutual exclusion , readers writers and so on, that may be bound to the implementation of different object classes. In our first approach, we used a preprocessor to translate GSP ....

Ciaran McHale, "Synchronisation in Concurrent, Object-oriented Languages: Expressive Power, Genericity and Inheritance," Ph.D. thesis, Department of Computer Science, Trinity College, Dublin, 1994.

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