| Wilf R. LaLonde, Dave A. Thomas, , and John R. Pugh. An Exemplar Based Smalltalk. In Proceedings of the ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, pages 332--330, Portland, Oregon, October 1986. Special Issue of SIGPLAN Notices, Volume 21, Number 11, November, 1986. |
....abstract type may be defined by stating how it differs from other classes in an object oriented language; this mechanism is called inheritance or subclassing. If E is defined by inheritance from a class D, then E is called a subclass of D. Subclasses should not be confused with subtypes [Sny86b] [LTP86] [Lis88] LaL89] as a subclass relationship is a purely implementation relationship, while a subtype relationship is a relationship among abstract data types (i.e. among specifications) In general, a subclass does not implement a subtype and a subtype need not be implemented by a subclass. For ....
.... described how subtype relationships can be used during design to record decisions that refine type specifications, to localize the effects of changes to type specifications, and to group and classify types [Lis88] LaLonde also uses subtype relationships as a means of classifying types by behavior [LTP86] [LaL89] However, neither Liskov nor LaLonde give a formal definition of subtype relationships. Some semi formal specification and verification techniques appear in Meyer s book on Eiffel [Mey88, Chapter 7] Assertions in Eiffel are written using program operations. Meyer gives specifications ....
Wilf R. LaLonde, Dave A. Thomas, and John R. Pugh. An Exemplar Based Smalltalk. ACM SIGPLAN Notices, 21(11):322--330, November 1986. OOPSLA '86 Conference Proceedings, Norman Meyrowitz (editor), September 1986, Portland, Oregon.
....with Smalltalk experience papers, and actor message passing architectures. Lewi86 Patt83 Samp86 Snyd79 Unga84] Concepts: There are an increasing number of papers discussing various object oriented concepts. See also survey papers and special issues, and papers on types and on data abstraction, [Borg86 Cunn86 Gogu86 Hend86 Khos86 Lalo86 Lieb86 Mads86 Nguy86 Ossh86 Sand86 Snyd86b Stro86c Wegn86] Concurrency: These papers discuss various mechanisms and formalisms for coping with concurrency (CSP, monitors, etc. The Andrews survey is excellent. Andr81 Andr83 Bern81 Brin72 Brin73 Brin78 Broo84 Dijk75 Hoar74 Hoar78 Lamp83 Nier87b Shoc82 Silb84 Upfa84] Data Abstraction: These papers ....
W.R. LaLonde, D.A. Thomas and J.R. Pugh, "An Exemplar Based Smalltalk", ACM SIGPLAN Notices, vol. 21, no. 11, pp. 322-330, Nov 1986.
....in an inheritance based system, prototype objects retain all state and behavior information within a single entity. The Actor family of languages uses prototypes in lieu of inheritance or classes. LaLonde has developed an implementation of Smalltalk that uses prototypes (he calls them exemplars) LaLonde 86] Borning has proposed a constraint based inheritance mechanism to maintain inheritance relationships in a system where classes and prototypes coexist [Borning 86] Refinement Self [Ungar 87] is a prototype based programming language based on the notion that all computation is a process of ....
....are full fledged Smalltalk objects, while Decouchant s proxies are part of the private data of the Object Manager portion of his resident virtual machine. ffl A number of researchers have observed the problems associated with subclassing and inheritance [Borning 86, Lieberman 86, Synder 86, LaLonde 86, Sandberg 86] 1 A transparent forwarding mechanism similar to the one used in Distributed Smalltalk has been independently developed by McCullough [McCullough 87] Accent [Fitzgerald 85] achieves similar results through different means. Accent avoids impacting local performance by careful ....
[Article contains additional citation context not shown here]
Wilf R. LaLonde, Dave A. Thomas, , and John R. Pugh. An Exemplar Based Smalltalk. In Proceedings of the ACM Conference on ObjectOriented Programming Systems, Languages, and Applications, pages 332-- 330, Portland, Oregon, October
....rapid prototyping and production programming, equally well. Today the requirements of production programmers are best fulfilled by strongly typed, inheritance based 1 languages ( Strou91] Meye92] MMN93] whereas exploratory programmers prefer type free ( GR89] or even delegation based ( LTP86] Lieb86] US87] systems. Delegation based languages have introduced a uniform, type and class free object model and the concept of delegation, a dynamically modifiable inheritance relationship between objects. In the terms of the Treaty of Orlando ( SLU89] delegation allows to express ....
....that should be resent to the parent (fig. 1.c) In the former case we talk about implicit resends, in the latter about explicit resends. Unfortunately the term delegation is (mis)used in literature to denote both variants of resends, causing much confusion (delegation as implicit resends: LTP86] Strou87] GSR94] delegation as explicit resends: RBP 91] p. 244] 3. Combining Inheritance and Delegation In Delegation ( Lieb86] SELF, Cecil, and NewtonScript delegation is used in conjunction with a class free object model, where every object is a self contained entity (fig. 1) ....
W. R. LaLonde, D. A. Thomas, J R. Pugh: "An Exemplar Based Smalltalk". In OOPSLA 86 Proceedings, SIGPLAN Notices, 21(11), 1986, ACM Press, pp. 322-330.
....subtype of some existing type. We give a formal definition of legal subtyping that guarantees that verification using supertype abstraction is sound. To make such a guarantee, the notion of a legal subtype relation has to be stronger than the implementation inheritance (or subclass) relation [58] [31] [55] The notion of legal subtyping must even be stronger than the syntactic guarantee that the new type will not cause type checking (or message not understood ) errors (see, for example, 8] It must instead be a behavioral notion, based on the specification of an abstract data type [1] 42] ....
.... hand, a clear separation of the notions of inheritance and subtyping is a tool of great conceptual power in object oriented programming, since it allows one to use inheritance to implement types in the most economical manner, and use subtyping to organize and reason about the use of types [58] [31] [30] 42] 15] 2] The distinction between subtypes and subclasses is not just academic. If one passes an argument whose type is not a subtype of the expected formal argument type to a procedure, the procedure will not act as desired. So if one uses subclasses as if they always implemented ....
LaLonde, W. R., Thomas, D. A., and Pugh, J. R. An exemplar based Smalltalk. ACM SIGPLAN Notices, 21(11):322--330, November 1986. OOPSLA '86 Conference Proceedings, Norman Meyrowitz (editor), September 1986, Portland, Oregon.
....to develop a classless (prototype based) object model for Cecil. We feel that a classless object model is simpler and more powerful than traditional class based object models. Cecil s object model is somewhat more restricted than those in other prototypebased languages [Borning 86, Lieberman 86, LaLonde et al. 86, Ungar Smith 87, Lieberman et al. 87] in response to other design goals. Since message passing is the cornerstone of the power of object oriented systems, Cecil includes a fairly general form of dynamic binding based on multiple dispatching. Multimethods affect many aspects of the rest of the ....
Wilf R. LaLonde, Dave A. Thomas, and John R. Pugh. An Exemplar Based Smalltalk. In OOPSLA '86 Conference Proceedings, pp. 322-330, Portland, OR, September, 1986. Published as SIGPLAN Notices 21(11), November, 1986.
....Analogously, personalities do the same for individual classes and specific behavior. One category of related works includes approaches that are based on using delegation to emulate modeling roles an object may play during its life, such as the work by LaLonde et al. on Exemplar Based Smalltalk [13] and the work by Gottlob et al. on extending object oriented systems with roles [8] Both approaches support two kinds of hierarchies: class and role hierarchies (called exemplars in [13] The main focus of these works is, however, on supporting dynamic modifications of an object s behavior, as ....
.... roles an object may play during its life, such as the work by LaLonde et al. on Exemplar Based Smalltalk [13] and the work by Gottlob et al. on extending object oriented systems with roles [8] Both approaches support two kinds of hierarchies: class and role hierarchies (called exemplars in [13]) The main focus of these works is, however, on supporting dynamic modifications of an object s behavior, as it undertakes cancels certain roles and not on explicitly supporting functional decomposition. Artifacts that model roles, or exemplars, are strongly bound to a certain class in the ....
LaLonde W. R., Thomas D., Pugh J. An Exemplar-Based Smalltalk. In Proceedings of OOPSLA '86, ACM Sigplan Notices, Vol. 21, No. 11, pp. 322-330.
....approaches to provide extensibility and composition of personalities. 5 RELATED WORK One category of related works includes approaches that are based on using delegation to emulate modeling roles an object may play during its life, such as the work by LaLonde et al. on Exemplar Based Smalltalk [11] and the work by Gottlob et al. on extending object oriented systems with roles [6] Both approaches support two kinds of hierarchies: class and role hierarchies (called exemplars in [11] The main focus of these works is, however, on supporting dynamic modifications of an object s behavior, as ....
.... roles an object may play during its life, such as the work by LaLonde et al. on Exemplar Based Smalltalk [11] and the work by Gottlob et al. on extending object oriented systems with roles [6] Both approaches support two kinds of hierarchies: class and role hierarchies (called exemplars in [11]) The main focus of these works is, however, on supporting dynamic modifications of an object s behavior, as it undertakes cancels certain roles and not on explicitly supporting functional decomposition. Artifacts that model roles, or exemplars, are strongly bound to a certain class in the ....
LaLonde Wilf R., Thomas Dave, and Pugh John. An Exemplar-Based Smalltalk. In Proceedings of OOPSLA '86, ACM Sigplan Notices, Vol. 21, No. 11, pp. 322-330.
....that aim to personify them is through the small granularity functions in the DI. One category of related works includes approaches that are based on using delegation to emulate modeling roles an object may play during its life, such as the work by LaLonde et al. on Exemplar Based Smalltalk [13] and the work by Gottlob et al. on extending object oriented systems with roles [8] Both approaches support two kinds of hierarchies: class and role hierarchies (called exemplars in [13] The main focus of these works is, however, on supporting dynamic modifications of an object s behavior, as ....
.... roles an object may play during its life, such as the work by LaLonde et al. on Exemplar Based Smalltalk [13] and the work by Gottlob et al. on extending object oriented systems with roles [8] Both approaches support two kinds of hierarchies: class and role hierarchies (called exemplars in [13]) The main focus of these works is, however, on supporting dynamic modifications of an object s behavior, as it undertakes cancels certain roles and not on explicitly supporting functional decomposition. Artifacts that model roles, or exemplars, are strongly bound to a certain class in the ....
LaLonde W. R., Thomas D., Pugh J. An Exemplar-Based Smalltalk. In Proceedings of OOPSLA '86, ACM Sigplan Notices, Vol. 21, No. 11, pp. 322-330.
....second problem directly by providing the forwarder keyword, allowing the delegate to refer back to the delegating object. 8 Related work Delegation is the foundation of a number of objectoriented languages without classes, such as ThingLab [Bor81] Act 1 [Lie87] a Smalltalk without classes [LTP86], and, perhaps most notably, Self [US87] Such languages were shown to be equally as powerful conceptually as inheritance by Lynn Stein [Ste87] although she notes that, in practice, either delegation or inheritance may be more desirable. She even proposes a hybrid model that would allow for both ....
W. LaLonde, D. Thomas, J. Pugh. An exemplar based Smalltalk. In OOPSLA '86 Conference Proceedings. ACM SIGPLAN Notices 21, 11 (Nov. 1986).
.... object oriented programming or representation language [19] Efficient class less languages with some kind of sharing but without delegation can be built [28] and it is possible to imagine some uses of delegation in many different worlds including worlds without classes [1] and worlds with classes [10, 15, 16]. The delegation mechanism is based on a link (generally called parent or delegation link) between objects 2 , rather than between descriptions. In objectoriented programming, delegation is presented as a message forwarding mechanism [17, 18] informally described in the following way: an ....
W.R. LaLonde, D. Thomas, and J.R. Pugh. An Exemplar Based Smalltalk. In Proceedings of the 1st Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA '86), Portland, Orergon, ACM Sigplan Notices (21)11 , pp. 322--330, 1986.
....efficiently without slowing down other basic operations of the system. 1. Smalltalk 80 is a trademark of ParcPlace Systems, Inc. 19 5.6 Other Related Work Several other systems have constructs similar to aspects of predicate classes. Boolean classes [McAllester Zabih 86] Exemplars [LaLonde et al. 86] and Clovers [Stein 91] all address the issue of forming automatic combination or union subclasses to avoid combinatorial explosion and better organize methods; in none of these systems is the classification based on an object s state, however. Some knowledge representation systems address many ....
Wilf R. LaLonde, Dave A. Thomas, and John R. Pugh. An Exemplar Based Smalltalk. In OOPSLA '86 Conference Proceedings, pp. 322-330, Portland, OR, September, 1986. Published as SIGPLAN Notices 21(11), November, 1986.
....abstraction. 2.1 Objects and Inheritance Cecil has a classless (prototype based) object model: self sufficient objects implement data abstractions, and objects inherit directly from other objects to share code. Several other prototype based models have been proposed [Borning 86, Lieberman 86, LaLonde et al. 86, Ungar Smith 87, Lieberman et al. 87] Cecil uses a classless model primarily because of its elegance and simplicity. Our approach to object oriented multi methods, however, does not hinge on this decision; our approach also could be adopted in a class based multipledispatching language. For ....
Wilf R. LaLonde, Dave A. Thomas, and John R. Pugh. An Exemplar Based Smalltalk. In OOPSLA '86 Conference Proceedings, pp. 322-330, Portland, OR, September, 1986. Published as SIGPLAN Notices 21(11), November, 1986.
....problem does not arise directly in Smalltalk 80, since it is dynamically typed, it becomes an issue when trying to make Smalltalk 80 statically typed while retaining most of its flexibility. Proposed solutions include factoring out the implementation aspect of classes into prototypical objects [23] and factoring out the type aspect into interfaces [9, 13] 2.3 Doubly Ended Queues Inheritance is not only an inadequate mechanism for achieving subtyping. If inheritance is used to define a subtype relationship, it can either make subtyping unsound or limit the flexibility of inheritance for ....
Wilf R. LaLonde, Dave A. Thomas, and John R. Pugh. "An exemplar based Smalltalk." In Proceedings of OOPSLA '86 Conference on Object-Oriented Programming Systems, Languages, and Applications, Portland, Oregon, 29 September - 2 October 1986. SIGPLAN Notices, Vol. 21, No. 11, November, pp. 322--330.
....of subtype implementation. Data abstraction can be supported by abstract supertypes which include calls to methods implemented in their subclasses. The combination of type and implementation ideas in the class construct can lead to problems in defining the inheritance hierarchy as discussed in [LTP86]. Specification and modelling concepts are poorly supported due to the lack of pre and postconditions. Pure code reuse is poorly supported since neither multiple nor selective inheritance is possible and since the inheritance of method implementations is coupled to the class hierarchy. 3.2. ....
....extensive modifications are useful, clear and safe: 1. when the operation is a type operation such as a constructor and not an operation on an instance 2. when the parent type is used only for modelling or consistency 2 We use the terms and inheritance and or inheritance differently to [LTP86]. A constructor is in effect a call to a particular type to create a new instance of that type and is therefore never polymorphic. No dynamic type error can occur where it is statically clear which type is being called. This is very fortunate since, as stated above, it can be very useful to add ....
LaLonde, W., Thomas, D. & Pugh, J. (1986) "An Exemplar-Based Smalltalk", OOPSLA '86 Proceedings.
....are full fledged Smalltalk objects, while Decouchant s proxies are part of the private data of the Object Manager portion of his resident virtual machine. ffl A number of researchers have observed the problems associated with subclassing and inheritance [Borning 86, Lieberman 86, Synder 86, LaLonde et al. 86, Sandberg 86] These efforts helped identify coping with inheritance in Distributed Smalltalk as a major area of concern. ffl The distributed garbage collector presented here is a distant descendent of the Kung Song Chansler collector used in StarOS [Kung and Song 77, Chansler 82, Gehringer and ....
....further research. Examples include exploring the feasibility of immutable classes and developing robust mechanisms to allow objects to plug into remote class hierarchies. An alternative might be to distribute a prototype based Smalltalk such as the exemplar system developed at Carleton University [LaLonde et al. 86] ffl Work is underway to develop single user, multiprocessor Smalltalk systems [Ungar 86, Thomas et al. 86] These systems should be an interesting decoupling of the problems associated with distribution and multiple users. ffl The design of Distributed Smalltalk avoids specifying policy where ....
Wilf R. LaLonde, Dave A. Thomas, , and John R. Pugh. An Exemplar Based Smalltalk. In Proceedings of the First ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, pages 332--330, Portland, Oregon, October 1986.
....the problem does not arise directly in Smalltalk 80, since it is dynamically typed, it becomes an issue when trying to make Smalltalk80 statically typed while retaining most of its flexibility. Proposed solutions include factoring out the implementation aspect of classes into prototypical objects [24] and factoring out the type aspect into interfaces [10, 14] 2.3 Doubly Ended Queues Inheritance is not only an inadequate mechanism for achieving subtyping. If inheritance is used to define a subtype relationship, it can either make subtyping unsound or limit the flexibility of inheritance for ....
Wilf R. LaLonde, Dave A. Thomas, and John R. Pugh. An exemplar based Smalltalk. In Proceedings of the OOPSLA '86 Conference on Object-Oriented Programming Systems, Languages, and Applications, pages 322--330, Portland, Oregon, 29 September - 2 October 1986. Association for Computing Machinery. ACM SIGPLAN Notices, 21(11), November 1986.
....the need for two separate hierarchies, a specification and an implementation hierarchy. Every concrete type, then, has to have implementations for the operations specified in one or more of the abstract types. More detailed arguments for the need of splitting up the class hierarchy are given in [LaLonde, Thomas, Pugh 1986]. Using Views It might be expected that there is a difficulty with this approach. Consider the abstract type monoid, and the concrete type rational numbers. We can view rational numbers as a monoid in two ways: the additive monoid and the multiplicative monoid. In order to execute a general ....
LaLonde, W.R., Thomas, D.A., Pugh, J.R., 1986: An Exemplar Based Smalltalk. In N. Meyrowitz (ed.): Proceedings of ObjectOriented Programming Systems, Languages and Applications (OOPSLA), 29 September to 2 October 1986, Portland, Oregon. SIGPLAN Notices, vol. 21, no. 11, pp. 322--330.
....graph. LaLonde and 1 Chapter 2 clarifies how the message sending paradigm of object oriented systems is modeled by applying the function associated with a method to an object. Zdonik investigate the situation where there are distinct graphs for each form of inheritance within the same system [LTP86, Zdo86] An orthogonal issue is whether a class may inherit from one or many parent classes. Single inheritance forces the inheritance graph to be a strict hierarchy while multiple inheritance organizes the classes into a directed acyclic graph. Proponents of object orientation claim that the ....
....types (subtypes) to change the arguments and semantics of inherited functions. The public and private declarations of Owl [SCW85] and C [Str86] allow (1) and (2) to be chosen for each data component and function on an individual basis. A system can have multiple inheritance graphs. LaLonde [LTP86] describes a Smalltalk 80 variant which has one inheritance graph for implementations and a second for behavioral specifications. It is also possible to have (3) without either (1) or (2) In this case each type must reimplement the functional specifications and semantics it has inherited. By ....
W. R. LaLonde, D. A. Thomas, and J. R. Pugh. An Exemplar Based Smalltalk. In Proc. of the Object-Oriented Programming Systems and Languages Conference, pages 322--330, 1986.
....encourages abstract design by providing objects as autonomous entities, but it lacks some of the mechanisms for appropriate implementation of the abstractions. 2. There is confusion between abstraction mechanisms and implementation mechanisms. Lalonde identified this as a problem with inheritance [10]. We encountered it in making distinctions between classes and objects (see Section 3) 3. Inheritance is less useful than it is often claimed to be. Introducing inheritance early in the design process may lead to confusion. Introducing inheritance late may help to reduce redundancy in the design, ....
W. Lalonde, D. Thomas, and J. Pugh. An exemplar based Smalltalk. In N. Meyrowitz, editor, Proc. ACM Conf. on Object-Oriented Programming Systems, Languages and Applications, pages 322--330, 1986.
....object can, in turn, become a prototype for another object. By the omission or addition of properties, the new copy may not be identical to its prototype. In this way it is possible to model a problem incrementally in an Actor language without having to use a class hierarchy. Several researchers [7, 21, 22, 29, 30, 33] have noted this fact. 4.1. Sequentiality Sequentiality of instruction processing does not exist within this programming model. In a script, the instruction sequence does not necessarily correspond to the order in which the instructions are carried out. The Actor model is based on a highly ....
W.R. Lalonde, D.A. Thomas and J.R. Pugh, An exemplar based Smalltalk, OOPSLA'86 Conference Proceedings, publié dans SIGPLAN Notices, 21, 11, 1986, pages 322-330.
No context found.
Wilf R. LaLonde, Dave A. Thomas, , and John R. Pugh. An Exemplar Based Smalltalk. In Proceedings of the ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, pages 332--330, Portland, Oregon, October 1986. Special Issue of SIGPLAN Notices, Volume 21, Number 11, November, 1986.
No context found.
W. LaLonde, D. Thomas, and J. Pugh. An exemplar based Smalltalk. In Proc. 1st ACM Conf. on Object-Oriented Programming: Systems, Languages and Applications (OOPSLA '86), 1986.
No context found.
Wilf R. LaLonde, Dave A. Thomas and John R. Pugh, `An exemplar based Smalltalk', Proceedings of the OOPSLA '86 Conference on Object-Oriented Programming Systems, Languages, and Applications, SIGPLAN Notices, 21, (11) (1986).
No context found.
W. R. LaLonde, D. A. Thomas and J. R. Pugh. "An exemplar based Smalltalk." In Proc. of ACM Conf. on Object-Oriented Programming Systems, Languages and Applications, 1986, pp. 322--330.
First 50 documents
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