| O.L. Madsen, "Block Structure and Object Oriented Languages", ACM SIGPLAN Notices, vol. 21, no. 10, pp. 133-142, Oct 1986. |
....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 ....
O.L. Madsen, "Block Structure and Object Oriented Languages", ACM SIGPLAN Notices, vol. 21, no. 10, pp. 133-142, Oct 1986.
....Car Note that classes can be attributes too. The meaning is analogous to having a plain object as attribute; there need not be a special relation between a class that is an attribute of a containing class and its containing class. Typically, much more meaning is attributed to nesting of classes [Madsen87] This will be considered later. 3.1 Applicability of Mixins What defines applicability of a mixin to a class There is no decisive answer to this question. The possible answers accord to the possible varieties of incremental modification mechanisms (e.g. behavioural compatible, signature ....
....nesting of mixins lies in their respective relation to encapsulation. As was amply discussed, nested mixins respect the encapsulation of objects. When nesting classes, the nesting is used to create shared name spaces for objects. Although nested classes can be very useful (as is shown in both [Madsen87] and [Buhr Zarnke88] this mechanism can be used by a programmer to break the encapsulation of objects. The next example is an example of class nesting. Both b1 and b2 can access the same variable i (instance variable of class A) i.e. they share the same variable i in their name space. ....
[Article contains additional citation context not shown here]
O. L. Madsen. Block Structure and Object-Oriented Languages. Research Directions in Object-Oriented Programming B. Shriver and P. Wegner (eds), pp 113-128, MIT Press 1987.
....nesting of classes and methods to any depth. However, there are certain restrictions in Simula for how nested classes may be used and how nested classes may inherit from other classes. These restrictions were removed in BETA. Different uses of nested classes in BETA is discussed in detail in [5]. Java has recently adopted the BETA style of allowing classes to be nested (called vr. # pyh r ) 6] C [7] namespaces allow a very limited form of nested classes where a local class can only access static variables and methods of its outer class, not dynamic P##ur#S yr# s#Ghthtr#8 #. p# ....
O. L. Madsen. Block Structure and ObjectOriented Languages. 68H#TDBQG6I#I'#vpr+, 21(10), pp. 133-142, October 1986.
....instance with (possibly shared) state before returning it to the caller. A generalization of this idea is explored in Section 4.3.3. 4.3.2 Modeling Some real world modeling problems can be nicely solved via nested classes. One such problem is known as the prototype abstraction relation problem ([55], page 123) The problem is how to model a concept that can be viewed both as an instance of a more general concept (since it has state changing over time) and as a class (since it models a prototype of similar entities) For example, the concept of a flight from point A to point B can have ....
....module along with methods that manipulate some extensible functionality to be supported on the nested module. In a sense, a manager module can be used to simulate a meta class in more conventional designs this has already been shown by using block structure in the programming language Beta ([55], page 124) For example, a generic manager module can be specified as follows: define manager (mk module ( new (lambda ( mk instance (self ref class) ref (lambda (inst attr args) apply attr ref inst attr args) This module specifies a method new that returns an instance of an ....
[Article contains additional citation context not shown here]
Madsen, O. L. Block structure and object-oriented languages. In Research Directions in Object-Oriented Programming. MIT Press, 1987, pp. 113 -- 128.
....our demonstration language PicoJava, a small subset of Java [1] includes the major features of an object oriented programming language: classes, inheritance, variables, qualified access, and reference assignment. For brevity, methods are omitted but the language allows nested class definitions [22, 26] and global variables, in order to show the combination of block structure and inheritance. The goal of the name analysis is to define a reference attribute decl of each identifier use site, which denotes the corresponding declaration. The goal of the type analysis is to define an attribute tp ....
O. L. Madsen. Block structure and object-oriented languages. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming. The MIT Press, 1987.
No context found.
O. L. Madsen. Block Structure and Object-Oriented Languages. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 113--128. The MIT Press, Cambridge, Massachusetts, July 1987.
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