102 citations found. Retrieving documents...
Barbara Liskov, Alan Snyder, Russell Atkinson, and Craig Schaffert. Abstraction mechanisms in CLU. Communications of the ACM, 20(8):564--576, August 1977.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

Object-oriented Issues - A Literature Review - Nierstrasz   (Correct)

....Prolog. Xerox PARC. Kahn86] 2 Other languages. The following languages are of interest, though they do not claim to be object oriented. Ada: Ada has user definable types and some data abstraction mechanisms. Ada83 Barn80 Bruno86] CLU: Programming language with data abstraction from MIT. [Lisk77] Alphard: Another language with some data abstraction. Shaw77] Modula: Descendent of Pascal with monitor like modules. Wirt83] 3 Applications. The following list includes work that employs object oriented concepts, and applications written in object oriented languages. AAIS: CAD environment ....

B. Liskov, A. Snyder, R. Atkinson and C. Scha#ert, "Abstraction Mechanisms in CLU", CACM, vol. 20, no. 8, pp. 564-576, Aug 1977.


Introducing Hybrid: A Unified Object-Oriented System - Nierstrasz   (Correct)

....be hidden. The only legitimate interface to the object should be through its operations. Programming languages that support some form of data abstraction are growing in number quite rapidly, and are becoming difficult to enumerate. Some of these are : Simula [Birt73] Smalltalk [Gold83] CLU [Lisk77], Argus [Lisk83] Zetalisp [Wein81] C [Stro84] OOPC (Objective C) Cox83] Galileo [Alba85] Modula [Wirt83] Oz [Nier85a] Taxis [Mylo80] OPAL [Ahls84] Smallworld [Laff85] and BETA [Kris83] In Hybrid, ultimately everything is an object. The initiative to do things is also encapsulated in ....

B. Liskov, A. Snyder, R. Atkinson and C. Schaffert, "Abstraction Mechanisms in CLU", CACM, vol. 20, no. 8, pp. 564-576, August 1977.


Type Assigment Systems for Lambda Calculi and for the Lambda.. - Liquori (1996)   (Correct)

....affect the final value of the whole execution. A method with multiple dispatch is an example of an overloaded function. 5. 2 Abstract Data Types and Existential Types Abstract Data Type declarations, from now on called ADT [Rey83, MP88] appear in typed programming languages like ADA, CLU, ML [LSS77, MMM91] This form of declaration binds a list of identifiers to a type with associated operations. We call this composite value a Data Algebra. The access to a data algebra is restricted to the explicit declared operations. Formally, a data algebra is a composed value, built from a set of ....

B. Liskov, A. Snyder, and C. Shaffert. Abstraction Mechanism in Clu. Communications of the ACM, (20):564--576, 1977.


Typeful Programming - Cardelli (1989)   (77 citations)  (Correct)

....program invariants from unwanted external intervention. An abstract type is an ordinary type along with a set of operations; the structure of the type is hidden and the provided operations are the only ones authorized to manipulate objects of that type. This notion was well embedded in CLU [Liskov et al. 77] Liskov Guttag 86] and formed the basis for the later development of modular programming languages. This notion of abstraction is more restrictive than the general notion of algebraic abstract types [Futatsugi Goguen Jouannaud Meseguer 85] Polymorphism is the ability of a function to handle ....

B.H.Liskov et al.: Abstraction Mechanisms in CLU, Comm ACM 20,8, 1977.


Distributed Smalltalk: Inheritance and Reactiveness in.. - Bennett (1988)   (1 citation)  (Correct)

....the most basic to the most complex entities. We will describe Smalltalk, and its contributions, in greater detail in Chapter 3. 2.1. 4 CLU CLU is a sequential, object oriented programming language designed to facilitate the construction of high quality programs through the use of abstraction [Liskov 77] The concept of levels of abstraction was introduced by Dijkstra in the T.H.E. system [Dijkstra 68] and integrated into the object model in collaboration with Hoare and Dahl [Dahl 72] The designers of CLU built upon this and related work in abstraction and type extensibility in programming ....

....failures without loss of information. Argus reflects a large body of earlier work by Liskov and her students in reliable software [Liskov 72] data abstraction in programming languages [Liskov 75] and distributed computing [Liskov 79b] The sequential programming language CLU [Liskov 79a, Liskov 77, Liskov 79c] forms the linguistic foundation on top of which Argus is built. Argus provides two principal extensions to CLU: actions and guardians. Actions An action is an activity that modifies some object (or objects) in the distributed system state atomically 8 . There are two properties ....

Barbara H. Liskov, Alan Synder, Russell Atkinson, and Craig Schaffert. Abstraction Mechanisms in CLU. Communications of the ACM, 20(8):564--576, August 1977.


Software Construction Using Components - Neighbors (1980)   (23 citations)  (Correct)

.... abstraction languages were motivated by the software engineering concept of hiding information in modules [Parnas72] Early abstraction mechanisms were the SIMULA class concept [Birtwistle73] and Early s relational data structures [Early73] Some examples of current abstraction languages are CLU [Liskov77], ALPHARD [Shaw77] and SMALLTALK [Goldberg76] The abstraction concept has given a handle to program verification work in that abstraction can be verified and their formal semantics be used in verifying programs which use the abstraction [Flon79] Extensible Languages The goal of extensible ....

Liskov, B., Snyder, A., Atkinson, R., and Shaffert, C., Abstraction Mechanisms in CLU, Communications of the ACM, 20(8):564574, August, 1977.


Distributed Systems: A Comprehensive Survey - Borghoff, Nast-Kolb   (Correct)

....a number of distributed programs, such as a library information system, a distributed editor, and a mail repository. Status: The Argus research is active. Contact: Barbara Liskov, Massachusetts Institute of Technology, Laboratory for Computer Science, Cambridge, MA 02139 References: 52] 53] [54], 55] 56] 57] 58] 59] 60] 61] 62] 63] 64] 2.6 Athena Main Goal Project Athena is an educational experiment introduced in May 1983. It is a joint project of MIT, DEC and IBM to explore the potential uses of advanced computer technology in the university curriculum. Athena ....

B. Liskov, A. Snyder, R.R. Atkinson, and J.C. Schaffert, "Abstraction mechanisms in CLU", Communications of the ACM, 20(8):564--576, August 1977.


The Architecture of the EXODUS Extensible DBMS - Carey (1986)   (70 citations)  (Correct)

....Language The E language is a derivative of C [Kern78] with the addition of a set of programming constructs carefully chosen to provide high leverage to the DBI. A number of these constructs were inspired by developments in programming languages over the last 10 years, most notably, from CLU [Lisk77] and Pascal [Jens75] Its major features include the ability to bind a pointer variable to an object in a file, and to declare abstract data types in the spirit of CLU clusters. Program structure is fully modular, with separate compilation possible for all modules (including parameterized modules, ....

Liskov, B., Snyder, A., Atkinson, R., and Schaffert, C., "Abstraction Mechanisms in CLU", Comm. ACM, 20(8), August, 1977.


Workshop on Aspects and Dimensions of Concern.. - Tarr, D'Hondt.. (2000)   (2 citations)  (Correct)

.... interactions by intercepting and modifying messages flowing between the components) It permits the design of a system using a component oriented methodology that decouples the type of a component (its specification or interface) from its implementation, so that the two can vary independently [17]. Interaction refinements are defined by wrapping the component type, using the Decorator pattern [15] A variation point (a context sensitive, dynamic join point see Section 3) manages the wrappers and decides, based on an externally specified composition policy, which wrappers (and thus, ....

Barbara Liskov, Alan Snyder, Russell Atkinson, and J. Craig Schaffert. "Abstraction Mechanisms in CLU." Communications of the ACM, vol. 20, no. 8, August 1977.


Queries In An Object-Oriented Graphical Interface - Dar, Gehani, Jagadish, al. (1995)   (8 citations)  (Correct)

....a fixed structure, a forest of directed acyclic graphs, obtained by unrolling the aggregation (sub)graph corresponding to a portion of the schema of an object oriented database, such as 5. An iterator is a control abstraction used for the production of a sequence of values [14]. 15 Ode. Our concern is the flow of values, representing object ids, through this structure. Other work in GUI design theory studies the interaction with a user, using some dialog modes. Where possible, OdeView supports both the menu type (MM) and command language type (CLM) dialog modes ....

B. Liskov, A. Snyder, R. Atkinson and C. Schaffert, "Abstraction Mechanisms in CLU", Commun. ACM 20, 8 (Aug. 1977), .


On the Relationship Between Classes, Objects, and Data.. - Fisher, Mitchell   (Correct)

.... such as CommonLisp [Ste84] and Cecil [Cha95] This paper is concerned with the study of class based languages and the relationship between three language constructs: classes, prototype based inheritance primitives, and traditional data abstraction of the form found in languages such as CLU [LSAS77, L 81] Ada [US 80] and ML [MTH90] We begin by identifying some essential properties of the class constructs that appear in class based object oriented languages. This analysis gives rise to evaluation criteria that we will later use to assess proposed class constructs. We then present ....

....combined with method invocation. 4.3 Existential quantification and data abstraction Since we will use existential types in several places, we review a general form of datatype declaration based on existential types. For further information on data abstraction, the reader is referred to [LSAS77, MP88, Mor73, Rey83, Set89] the connection between existential types and data abstraction is elaborated in [MP88, Mit93] The declaration form Abstype t with x 1 : # 1 , x k : # k is ## ; M 1 , M k # in N declares an abstract type t with operations x 1 , x k and ....

B. Liskov, A. Snyder, R. Atkinson, and C. Scha#ert. Abstraction mechanisms in CLU. Comm. ACM, 20:564--576, 1977.


Object-Oriented Implementation of Communication Protocols - Granö   (Correct)

....Message passing Being the main mechanism for interobject communication, message passing is central to object oriented programming. The strict encapsulation enforced with messages gives objects better granularity than the one provided by abstract data types as used, for example, in the CLU language [16] (although there exists special optimization features such as the friend construct of C to overcome this) Message passing is synchronous in sequential OOP: the sender is suspended for the duration of processing. In concurrent OOP, asynchronous messages might also be available (both can be ....

Liskov B. et al.: Abstraction Mechanisms in CLU. Communications of ACM, 20, 8, 564-576, 1977.


Proposal for a Protocol Engineering Language - Granö, Harju, Paakki, Järvinen (1994)   (Correct)

....unidirectional. Being the main mechanism for interobject communication, message passing is central to object oriented programming. The strict encapsulation provided by messages gives objects better granularity than the one provided by abstract data types as used, for example, in the CLU language [LSA77]. Message passing is usually synchronous in sequential object oriented programming: the sender is suspended for the duration of processing. In concurrent object oriented programming, asynchronous messages might also be available. In distributed environments one may have to specify the location of ....

Liskov B., Snyder A., Atkinson R., Schaffert C.: Abstraction Mechanisms in CLU. Communications of the ACM 20, 8, 1977, 564--576.


Control Abstraction in Parallel Programming Languages - Crowl, LeBlanc (1992)   (Correct)

....by which programmers specify a statement ordering (parameterized with respect to the statements being ordered) separately from an implementation of that ordering. A control construct is the result of that process. Control abstraction has been used in sequential programming languages such as CLU [11] to define control constructs that iterate over the elements of an abstract data type. Few parallel programming languages support control abstraction however, since the benefits of using control abstraction for parallel programming are not generally recognized. These benefits include: New control ....

....with an emphasis on procedure and data abstraction. This history does not mention control abstraction, although the mechanisms for control abstraction are present in Lisp. Control abstraction has often been used in sequential languages to support data abstraction. For example, CLU iterators [11] (or generators) are a form of control abstraction. With iterators, the user of an abstract type can operate on the elements of the type without knowing the underlying representation. In CLU, and other languages designed to support data abstraction, control abstraction plays a secondary role to ....

[Article contains additional citation context not shown here]

B. H. Liskov, A. Snyder, R. R. Atkinson, and J. C. Schaffert. Abstraction mechanisms in CLU. Communications of the ACM, 20(8):564--576, August 1977.


The Cecil Language - Specification and Rationale - Version 3.0 - Chambers (1995)   (12 citations)  (Correct)

....additionally supports an enhanced CLU like where clause mechanism that provides an alternative to F bounded polymorphism. C s private inheritance supports a kind of inheritance without subtyping. Several languages support some form of mixed static and dynamic type checking. For example, CLU [Liskov et al. 77, Liskov et al. 81] allows variables to be declared to be of type any. Any expression may be assigned to a variable of type any, but any assignments of an expression of type any to an expression of another type must be explicitly coerced using the parameterized force procedure. Cedar supports a ....

Barbara Liskov, Alan Snyder, Russell Atkinson, and J. Craig Schaffert. Abstraction Mechanisms in CLU. In Communications of the ACM 20(8), pp. 564-576, August, 1977.


Towards a Method of Object-Oriented Concurrent Programming - Caromel   (63 citations)  (Correct)

....calls as first class objects. The operator , applied to a routine or an attribute, returns an object of type feature model; this class is the general modeling of a feature. Such a mechanism provides for routine variable manipulations and activations as in structured languages (for instance Clu [18], Oberon [23] In object oriented programming it corresponds to a meta level, and more precisely a message reification [8, 9] There are two different settings for an exception: ffl continue: execute a specific handler and resume the previous action. ffl ignore: ignore the exception. 3 class ....

Liskov, B., Snyder, A., Atkinson, R., C. Schaffert, C. "Abstraction mechanisms in CLU" CACM, vol. 20, no. 8, August 1977. 18


A Tool for Planning the Restructuring of Data Abstractions in.. - Chen (1996)   (6 citations)  (Correct)

....before, software maintenance is difficult and expensive. An effective method of maintaining a system is to re introduce structure to the existing system while retaining current functionality. One of the more useful restructuring activities is data encapsulation. Data encapsulation [Parnas 72, Liskov et al. 77] is a useful restructuring activity because hiding the code related to a data structure undergoing maintenance limits the extent of changes to the scope of a module. Encapsulating a data structure usually requires hiding the statements accessing a global data structure behind an intuitive, ....

Liskov, B., Snyder, A., Atkinson, R., and Schaffert, C. "Abstraction Mechanisms in CLU." Communications of the ACM, 20(8):564--576, 1977.


Metalevel Building Blocks for Modular Systems - Jagannathan (1994)   (18 citations)  (Correct)

....these operations over any name; using such forms would enable extend record to perform error checking of this kind directly, rather than requiring it to be performed by its callers. 5.1.1 Modules. In addition to providing record types, languages such as Ada [U.S. Dept. of Defense 1982] Clu [Liskov et al. 1977], and Modula 2 [Wirth 1985] also define a module or data abstraction facility. 1 There are four salient features of modules common to all these languages: 1) modules are the fundamental unit of compilation and cannot be generated dynamically, 2) modules are the fundamental mechanism for ....

Liskov, B., Synder, A., Atkinson, R., and Schaffert, C. 1977. Abstraction mechanisms in CLU. Commun. ACM 20, 8 (Aug.), 564 -- 576.


Unifying Genericity: Combining the Benefits of Virtual Types .. - Thorup, Torgersen (1999)   (10 citations)  (Correct)

....classes. 2.1 Parameterized Classes In his often quoted paper [Mey86] Bertrand Meyer presents parameterized classes as a programming language mechanism in Ei el which combines the bene ts of polymorphism, as in ML, and those of inheritance. Several other programming languages, including CLU [LSAS77] C [ES90] and Sather [Omo93] implement similar features. Most recently several such proposals have come forth for Java [OW97,MBL97,AFM97,BOSW98,CS98] The most basic mechanism, found e.g. in C , is so called unconstrained genericity, in which a parameterized class is described using simple ....

....Structural Subtyping In functional settings with structural typing, two record types are the same if their elds have the same names and types. Thus, types can be declared completely independently and still be in a subtyping relationship. In an objectoriented setting, where clauses as in CLU [LSAS77,MBL97] and matching in LOOM [Bru97] use variations of structural subtyping. As an alternative to this, many object oriented programming languages use name based typing (as in Java, C or Beta) With name based typing, two class types are only in a subtype relation if one is explicitly a ....

Barbara Liskov, Alan Snyder, Russel Atkinson, and Craig Scha ert. Abstraction mechanisms in CLU. Communications of the ACM, 20(8), August 1977.


Typeful Programming - Cardelli (1993)   (77 citations)  (Correct)

....program invariants from unwanted external intervention. An abstract type is an ordinary type along with a set of operations; the structure of the type is hidden and the provided operations are the only ones authorized to manipulate objects of that type. This notion was well embedded in CLU [Liskov et al. 77] Liskov Guttag 86] and formed the basis for the Page 5 later development of modular programming languages. This notion of abstraction is more restrictive than the general notion of algebraic abstract types [Futatsugi Goguen Jouannaud Meseguer 85] Polymorphism is the ability of a function to ....

B.H.Liskov et al.: Abstraction Mechanisms in CLU, Comm ACM 20,8, 1977.


Dynamic Modules in Higher-Order Languages - Jagannathan (1994)   (5 citations)  (Correct)

....their types) that are visible to the outside. The set of bindings associated with a given signature defines the module interface. Depending on the semantics desired, a module could be instantiated multiple times (e.g. as in Scheme 48 [12] or ML [18] or only once (e.g. as in Ada [24] or Clu [17]) In high level programming languages such as Scheme [4] ML [19] or Haskell [10] the exclusive use of lexical binding and the absence of abstractions to construct and manipulate namespaces necessitates the inclusion of a module facility as part of the language kernel. This is because lexical ....

....record constructor mechanism as follows: define (make R x y z) barrier (make public (x y z) reify) When applied, make R returns a three element namespace binding its argument names to the values supplied. 5. 2 Modules In addition to providing record types, languages such as Ada [24] Clu [17], and Modula 2 [27] also define a module or data abstraction facility 1 . There are four salient features of modules common to all these languages: 1. modules are the fundamental unit of compilation and cannot be generated dynamically, 2. modules are the fundamental mechanism for building ....

Barbara Liskov, Alan Synder, Russell Atkinson, and Craig Schaffert. Abstraction Mechanisms in CLU. Communications of the ACM, 20(8):564 -- 576, August 1977.


The Design of the E Programming Language - Richardson, Carey, Schuh (1989)   (13 citations)  (Correct)

....container types, such as sets and indices, as well as in expressing generic operators, such as select and join. Iterators were added as a useful programming construct in general, and as a mechanism for structuring database queries in particular. Both generators and iterators were inspired by CLU [Lisk77]. Persistence the ability of a language object to survive from one program run to the next was added because it is an essential attribute of database objects. In addition, by describing the database or object base in terms of persistent variables, one may then manipulate it directly using ....

....Section 5.3.3. 2.1. Classes A central concept in C is the notion of a class. A class defines a type, and its definition includes both the representation of any instance of the class as well as the operations that may be performed on an instance. Unlike the abstraction mechanisms provided in CLU [Lisk77] or Smalltalk [Gold83] a C class does not necessarily hide the representation of instances. It is up to the designer of a class to declare explicitly which members (data and function) are private and which are public. The data abstraction capabilities that C classes provide were one of the ....

[Article contains additional citation context not shown here]

Liskov, B., Snyder, A., Atkinson, R., and Schaffert, C., "Abstraction Mechanisms in CLU," Comm. ACM, 20(8), Aug., 1977.


Design of the Mneme Persistent Object Store - Moss (1990)   (50 citations)  (Correct)

....at least 100,000 references per second to fields of objects, to support dragging collections of items on a workstation display screen, 2 and being able to retrieve 10,000 useful , typical size objects per second from external storage into memory. 3 Typical size for languages such as CLU [29, 28], Smalltalk 80 4 [17] and Trellis 5 [38] appears to be in the range of 30 to 50 bytes, but this is 2 This number comes from informal discussion with a Smalltalk CAD tool developer at a workshop. 3 This goal came from CAD tool developers of a large computer manufacturer. 4 Smalltalk 80 ....

LISKOV, B., SNYDER, A., ATKINSON, R., AND SCHAFFERT, C. Abstraction mechanisms in CLU. Commun. ACM 20, 8 (Aug. 1977), 564--576.


The ExBed project - some experiences - Arkko, Kuusela, Nuutila, Tamminen, .. (1988)   (1 citation)  (Correct)

....match algorithm is not used, and show what data representation and program structuring facilities we think are necessary. Next we describe experiences with XC, reported in more detail elsewhere (Nuutila et al. 1987) and motivate the introduction of XE. Finally we describe XE, relating it to CLU (Liskov et al. 1977). This work has been performed at the Helsinki University of Technology, funded by the Technology Development Centre, Nokia Corporation and KONE Corporation. 2. Data Abstraction as a Basis The RETE algorithm is a technique for matching a set of left hand sides (conditions) of rules against a set ....

....integrally connected to the development environment (LISP) 4. Compiler back ends to generate code for target environments, the main one of which has been Intel 8086. 5. Runtime systems for the target environments. 5. XE XE is a general purpose programming language that owes very much to CLU (Liskov et al. 1977), which has been used as a starting point in its design. XE allows parameterized (generic) data abstractions as the main means of expressive power and reuse and its mechanisms for defining procedures, iterators and data types will be familiar to anybody knowing CLU. In this approach the ....

Liskov, B., Snyder, A., Atkinson, R., Shaffert, C., Abstraction Mechanisms in CLU, Comm. ACM, vol. 20, no. 8, 1977, pp. 564-572.


A Remote Execution Mechanism For Distributed.. - Dearle, Rosenberg.. (1991)   (4 citations)  (Correct)

....environment and to allow programmers to take advantage of specialised hardware (such as array processors) seamlessly within the programming environment. They present a generic model that they term REV (Remote EValuation) and a proposal for the integration of the model with the language CLU [LSA77]. Many of the ideas presented within the context of the REV work can be seen to have originated in Argus. The REV model allows the programmer to select a server by specifying a set of attributes that the store must have. This is achieved using a language mechanism called service that specifies the ....

....is claimed that objects must be able to invoke other objects in a location independent manner. Such reasoning would suggest that in the context of persistent systems a one world approach should be advocated. In the Emerald system, objects communicate via the invocation of other objects. Like CLU [LSA77] and Smalltalk 80 [GR83] the parameter passing mechanism used is call by object reference. However, since objects are mobile, referenced objects may be moved to the location of the callee. Which objects are moved is determined by one of two mechanisms. The first of these is type dependent ....

Liskov, B., Snyder, A., Atkinson, R. & Schaffert, C. "Abstraction Mechanisms in CLU", Communications ACM, 20(8), pp. 564--576 (Aug. 1977).


Data Flow Analysis of Recursive Structures - Cohen, Collard, Griebl (1996)   (2 citations)  (Correct)

....record has finite size, easing the work of the compiler (and of the compiler writer) Of course, there are languages which offer recursive data structures without explicit manipulation of memory. Most logic or functional languages do so. As an example of imperative language, see for instance CLU [1]. Our act of faith is that (1) recursive data structures are of the utmost importance, even in the numerical community; for instance, elimination trees are widely used in sparse factorization; 2) The use of pointers, even when pointers are typed and no arithmetic on pointers is allowed, a) is ....

B. Liskov et al. Abstraction mechanisms in CLU. Communications of the ACM, 20(8):564--578, August 1977.


Design and Specification of Iterators Using the Swapping.. - Weide, Edwards, Harms.. (1992)   (2 citations)  (Correct)

....Kingston, Ontario K7L 3N6, Canada. Internet: dalamb qucis.queensu.ca. 1. Introduction An iterator is an abstraction that supports sequential access to the individual items of a collection, without modifying the collection. While some academic languages (most notably Alphard [Shaw 77] and CLU [Liskov 77] include special language constructs for iterators, and others have been proposed [Cameron 89] the most widely used modern imperative languages such as Ada and C offer no special support for iterators. In these languages and most others, iterators must be designed and encapsulated using the ....

....However, this is not essential solely to obtain the required functionality of an iterator, if the operations on the collection abstraction are sufficiently powerful [Edwards 90, Harms 91, Weide 91] 2.2. Language Features and User Defined Iterator Abstractions Alphard [Shaw 77] and CLU [Liskov 77] have built in iterator constructs, and Cameron [Cameron 89] proposes some elegant variations. Here we concentrate on designing iterators as user defined abstractions in languages that do not include special constructs to support iterators, and we do not further consider possible language support ....

Liskov, B, Snyder, A., Atkinson, R., and Schaffert, C., "Abstraction mechanisms in CLU," CACM 20, 8 (Aug. 1977), 564-576.


A Model for Parallel Programming - Lawrence Crowl (1988)   (Correct)

....There are two major models of variables and parameters in imperative languages. In the conventional value (or copy) model, variables contain values. Fortran, Algol, and its derivatives use this model. In the reference model, variables refer to objects. Smalltalk [Goldberg and Robson, 1983] and CLU [Liskov et al. 1977] use this model. The desire for a uniform encapsulation mechanism implies that a parallel language must choose one model and stick with it. This includes variables for parallel abstractions, parameters, and variables local to an abstraction. Most imperative parallel languages provide a reference ....

Barbara H. Liskov, Alan Snyder, R. R. Atkinson, and J. C. Schaffert, "Abstraction Mechanisms in CLU," Communications of the ACM, 20(8):564--576, August 1977.


Supporting the Restructuring of Data Abstractions through.. - Bowdidge (1995)   (16 citations)  (Correct)

....the programmer could encapsulate an existing and related data structure into an opaque structure called an abstract data type, then change the behavior of that abstract data type to include the new functionality. This approach follows the data abstraction style of designing programs [Parnas 72, Liskov et al. 77] An ADT is a programming language structure where the details of the data structure s implementation are be hidden from the rest of the program. Only a small set of interface functions should be allowed to access the data structure directly; other parts of the system should call the interface ....

B. Liskov, A. Snyder, R. Atkinson, and C. Schaffert. Abstraction mechanisms in CLU. Communications of the ACM, 20(8):564--576, 1977.


What is an Object-Oriented Programming Language? - Fisher, Mitchell (1995)   (Correct)

....in the declaration may access the list. This restriction allows the invariant that list elements appear in first in first out order to be maintained, regardless of how queues are used in client programs. A drawback of the kind of abstract data types used in ML and other languages such as CLU [LSAS77, L 81] and Ada [US 80] becomes apparent when we consider a program that uses both queues and priority queues. For example, suppose that we are simulating a system with several wait queues, such as a bank or hospital. In a teller line or hospital billing department, customers are served on a ....

B. Liskov, A. Snyder, R. Atkinson, and C. Schaffert. Abstraction mechanisms in clu. Comm. ACM, 20:564--576, 1977.


Lazy Modular Upgrades in Persistent Object Stores - Boyapati, Liskov, Shrira.. (2003)   (3 citations)  Self-citation (Liskov)   (Correct)

No context found.

B. Liskov, A. Snyder, R. R. Atkinson, and C. Scha ert. Abstraction mechanisms in CLU. In Communications of the ACM (CACM) 20(8), August 1977.


Lazy Modular Upgrades in Persistent Object Stores - Boyapati, Liskov, Shrira.. (2003)   (3 citations)  Self-citation (Liskov)   (Correct)

No context found.

B. Liskov, A. Snyder, R. R. Atkinson, and C. Scha#ert. Abstraction mechanisms in CLU. In Communications of the ACM (CACM) 20(8), August 1977.


Ownership Types for Object Encapsulation - Boyapati, Liskov, Shrira (2003)   (13 citations)  Self-citation (Liskov)   (Correct)

No context found.

B. Liskov, A. Snyder, R. R. Atkinson, and C. Scha#ert. Abstraction mechanisms in CLU. In Communications of the ACM (CACM) 20(8), August 1977.


Lazy Modular Upgrades in Persistent Object Stores - Boyapati, Liskov, Shrira.. (2003)   (3 citations)  Self-citation (Liskov)   (Correct)

....an upgrade and if a transform function reads such subobjects, then Condition E would be violated. But such upgrade are unlikely to happen in practice. Another reason Condition E may not hold is that an object might not encapsulate subobjects it depends on. This occurs in the case of iterators [43, 35] and other similar constructs. Consider, for example, an iterator over a set s. The iterator s job is to return a di erent element of the set each time its next method is called until all elements of the set have been returned. To do this job eciently, the iterator needs direct access to the ....

B. Liskov, A. Snyder, R. R. Atkinson, and C. Scha ert. Abstraction mechanisms in CLU. In Communications of the ACM (CACM) 20(8), August 1977.


Data Abstraction and Hierarchy - This Research Was   Self-citation (Liskov)   (Correct)

....by encapsulating them inside data abstractions. 2.2. Linguistic Support for Data Abstraction Data abstractions are supported by linguistic mechanisms in several languages. The earliest such language was Simula 67 [3] Two major variations, those in CLU and Smalltalk, are discussed below. CLU [8][11] provides a mechanism called a cluster for implementing an abstract type. A template for a cluster is shown in Figure 2 1. The header identifies the data type being implemented and also lists the operations of the type; it serves to identify what procedure definitions inside the cluster can be ....

Liskov, B., Snyder, A., Atkinson, R. R., and Schaffert, J. C. "Abstraction mechanisms in CLU".Comm. of the ACM 20, 8 (August 1977), 564-576.


A Module System for Scheme - Pavel Curtis Xerox   (Correct)

No context found.

Barbara Liskov, Alan Snyder, Russell Atkinson, and Craig Schaffert. Abstraction mechanisms in CLU. Communications of the ACM, 20(8):564--576, August 1977.


A Static C++ Object-Oriented Programming (SCOOP).. - Burrus..   (Correct)

No context found.

B. Liskov, A. Snyder, R. Atkinson, and J. C. Scha#ert. Abstraction mechanisms in CLU. Communications of the ACM, 20(8):564--576, August 1977.


SafeJava: A Unified Type System for Safe Programming - Boyapati (2004)   (2 citations)  (Correct)

No context found.

Barbara Liskov, Alan Snyder, Russell R. Atkinson, and Craig Scha ert. Abstraction mechanisms in CLU. In Communications of the ACM (CACM) 20(8), August 1977.


A Survey of Object Oriented Databases - Demeyer (1992)   (Correct)

No context found.

Liskov, B. / Snyder, A. / Atkinson, R. / Schaffert, C. "Abstraction mechanisms in CLU" From "Readings in object-oriented database systems (ed. Zdonik, S. B. / Maier, D.)" ISBN 055860 -000-0; Morgan Kaufmann publishers.


Subtyping and Inheritance in Object-Oriented Programming - Kurtev (2000)   (Correct)

No context found.

Barbara Liskov, Alan Snyder, Russell Atkinson, Craig Scha ert. Abstraction Mechanisms in CLU. Communications of the ACM (CACM) 20(8):564-576, August 1977.


SafeJava: A Unified Type System for Safe Programming - Boyapati (2004)   (2 citations)  (Correct)

No context found.

Barbara Liskov, Alan Snyder, Russell R. Atkinson, and Craig Scha#ert. Abstraction mechanisms in CLU. In Communications of the ACM (CACM) 20(8), August 1977.


SafeJava: A Unified Type System for Safe Programming - Boyapati (2004)   (2 citations)  (Correct)

No context found.

Barbara Liskov, Alan Snyder, Russell R. Atkinson, and Craig Scha ert. Abstraction mechanisms in CLU. In Communications of the ACM (CACM) 20(8), August 1977.


Typeful Programming - Luca Cardelli Digital (1989)   (77 citations)  (Correct)

No context found.

B.H.Liskov et al.: Abstraction Mechanisms in CLU, Comm ACM 20,8, 1977.


A Static C++ Object-Oriented Programming (SCOOP).. - Burrus..   (Correct)

No context found.

B. Liskov, A. Snyder, R. Atkinson, and J. C. Scha#ert. Abstraction mechanisms in CLU. Communications of the ACM, 20(8):564--576, August 1977.


The Quest Language and System - Cardelli (1994)   (3 citations)  (Correct)

No context found.

B.H.Liskov et al.: Abstraction Mechanisms in CLU, Comm ACM 20,8, 1977.


The Design and Implementation of the SELF Compiler, an.. - Chambers (1992)   (3 citations)  (Correct)

No context found.

Barbara Liskov, Alan Snyder, Russell Atkinson, and J. Craig Schaffert. Abstraction Mechanisms in CLU. In Communications of the ACM 20(8), pp. 564-576, August, 1977.


Object-Oriented Query Optimization: What's the Problem? - Mitchell, Zdonik, Dayal (1991)   (4 citations)  (Correct)

No context found.

Barbara Liskov et al. Abstraction Mechanisms in CLU. Communications of the ACM, 20(8):564--576, August 1977.


A Module System for LOOM - Petersen (1997)   (Correct)

No context found.

B. Liskov, A. Snyder, R. Atkinson, and C. Schaffert. Abstraction mechanisms in clu. Comm. ACM, 20:564--576, 1977.


Language Usage In Information Interchange Tutorial - Ccsds Green   (Correct)

No context found.

Liskov, B., et al., "Abstraction Mechanisms in CLU," Communications of the ACM, vol. 20, number 8, August 1977, pp 564-576


Engineering Knowledge-Based Software for Large Embedded Systems - Bouteldja (1989)   (1 citation)  (Correct)

No context found.

Liskov, B., Snyder, A., Atkinson, R., and Schaffert, C. Abstraction Mechanisms in CLU. Commun. ACM 20, 8 (Aug. 1977), 564-576.

First 50 documents  Next 50

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