Filters








56 Hits in 4.2 sec

Subtyping-Inheritance Conflicts: The Mobile Mixin Case [chapter]

Lorenzo Bettini, Viviana Bono, Betti Venneri
IFIP International Federation for Information Processing  
In sequential class-and mixin-based settings, subtyping is essentially a relation on objects: no subtype relation is defined on classes and mixins, otherwise there would be conflicts with the inheritance  ...  Nevertheless, a width-depth subtyping relation on class and mixin types is useful in the realm of mobile and distributed processes, where object-oriented code may be exchanged among the sites of a net.  ...  Either no subtype relation (as in [9] ), or no non-trivial subtype relation is defined on classes and mixins, otherwise there would be conflicts with the inheritance mechanism (see [11] , Chapter 5.3  ... 
doi:10.1007/1-4020-8141-3_35 dblp:conf/ifipTCS/BettiniBV04 fatcat:ed4zm7byvva6dgs6y4vagge5rm

A Type System for First-Class Layers with Inheritance, Subtyping, and Swapping [article]

Hiroaki Inoue, Atsushi Igarashi
2019 arXiv   pre-print
The language models main features of the type-safe version of JCop, including dynamically activated first-class layers, inheritance of layer definitions, layer subtyping, and layer swapping.  ...  Typechecking programs written in a COP language is difficult because the activation of a layer can even change objects' interfaces.  ...  We thank Tomoyuki Aotani, Malte Appeltauer, Robert Hirschfeld, and Tetsuo Kamina for valuable discussions on the subject.  ... 
arXiv:1905.01453v1 fatcat:w4pregi6uzhjbjypno2lxrtk3m

A type system for first-class layers with inheritance, subtyping, and swapping

Hiroaki Inoue, Atsushi Igarashi
2019 Science of Computer Programming  
The language models main features of the type-safe version of JCop, including dynamically activated first-class layers, inheritance of layer definitions, layer subtyping, and layer swapping.  ...  Typechecking programs written in a COP language is difficult because the activation of a layer can even change objects' interfaces.  ...  We thank Tomoyuki Aotani, Malte Appeltauer, Robert Hirschfeld, and Tetsuo Kamina for valuable discussions on the subject.  ... 
doi:10.1016/j.scico.2019.03.008 fatcat:cfoln5hclnfufchyuxfm3mjldu

Technologies for Evolvable Software Products: The Conflict between Customizations and Evolution [chapter]

Peter Sestoft, Sebastien Vaucouleur
2008 Lecture Notes in Computer Science  
problems, and discuss whether they could be brought to bear on the conflict.  ...  The subject of this paper is the conflict between the customizations made for each use context and the evolution of the kernel over time.  ...  , and the IT University of Copenhagen.  ... 
doi:10.1007/978-3-540-89762-0_8 fatcat:vqysgncbvjfsheqkr3u4vjb6ku

A Java Package for Class and Mixin Mobility in a Distributed Setting [chapter]

Lorenzo Bettini
2004 Lecture Notes in Computer Science  
In this paper we present the Java package momi that implements the concepts of the language MOMI, which is a calculus for exchanging mobile object-oriented code structured through mixin inheritance.  ...  Mixins, i.e., classes parameterized over the superclass, can be the right mechanism for dynamically assembling class hierarchies with mobile code downloaded from different sources.  ...  Acknowledgments I would like to thank the two co-authors of MOMI, Viviana Bono and Betti Venneri. The anonymous referees provided helpful suggestions for clearing up some aspects in the paper.  ... 
doi:10.1007/978-3-540-24639-8_2 fatcat:2qn3i4fesjgzxgnmaop5dxoleq

MOMI: a calculus for mobile mixins

Lorenzo Bettini, Betti Venneri, Viviana Bono
2005 Acta Informatica  
MOMI's key idea is structuring mobile object-oriented code by using mixin-based inheritance.  ...  The key feature of the paper is the definition of this subtyping relation on classes and mixins that enables a significantly flexible, yet still simple, communication pattern.  ...  Acknowledgments We thank the anonymous referees for many helpful remarks and suggestions. References  ... 
doi:10.1007/s00236-005-0176-0 fatcat:mfc2fbyf4vdmpmkjutyih47c34

Safe and Flexible Objects with Subtyping

Lorenzo Bettini, Viviana Bono, Silvia Likavec
2005 Journal of Object Technology  
To ensure that mixin inheritance can be statically type checked, the calculus employs subtype-constrained parameterization.  ...  Furthermore, the calculus is endowed with width subtyping on complete objects, which provides enhanced flexibility while avoiding possible conflicts between method names. an implementation one.  ...  Acknowledgments: We thank the anonymous referees for their suggestions.  ... 
doi:10.5381/jot.2005.4.10.a1 fatcat:yd3o74vrxbatbdnrztwd7frwja

Safe and flexible objects

Lorenzo Bettini, Viviana Bono, Silvia Likavec
2005 Proceedings of the 2005 ACM symposium on Applied computing - SAC '05  
We design a calculus where objects are created by instantiating classes, as well as mixins. Mixin-instantiated objects are "incomplete objects", that can be completed in object-based fashion.  ...  The combination of class-based features with object-based ones offers some flexible programming solutions.  ...  This is in order to avoid conflicts between the form of objectbased inheritance, that arises by object composition, and subtyping.  ... 
doi:10.1145/1066677.1066963 dblp:conf/sac/BettiniBL05 fatcat:iz2xab2hy5flhikrd4ftarmxqu

Implementing statically typed object-oriented programming languages

Roland Ducournau
2011 ACM Computing Surveys  
In this paper, we survey the various implementation schemes available in separate compilation, in the three cases of single inheritance, multiple inheritance, and single inheritance but multiple subtyping  ...  The overhead is more or less important, whether inheritance and subtyping are single or multiple.  ...  Some applications to multiple inheritance and the special case of mixins are examined.  ... 
doi:10.1145/1922649.1922655 fatcat:ntlwqmagj5h5damjaiy46whaxu

Challenges and Opportunities of Modularizing Textual Domain-Specific Languages

Christoph Rieger, Martin Westerkamp, Herbert Kuchen
2018 Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development  
We therefore perform a case study on a large-scale DSL for model-driven development of mobile applications called MD 2 , and review the current state of DSL composition techniques.  ...  Over time, domain-specific languages (DSL) tend to grow beyond the initial scope in order to provide new features.  ...  However, due to the threat of possible conflicts, mainly single inheritance is used in practice (Ducasse et al., 2006) . Mixins represent a special form of language extension.  ... 
doi:10.5220/0006601903870395 dblp:conf/modelsward/RiegerWK18 fatcat:abdlnwbva5f6vp7iqlovkbfozi

Experience with CommonLoops

James Kempf, Warren Harris, Roy D'Souza, Alan Snyder
1987 Conference proceedings on Object-oriented programming systems, languages and applications - OOPSLA '87  
language (CommonObjects) on top of the CommonLoops metaclass kernel, paralleling the two aspects of CommonLoops: the programming language and the me&ass kernel.  ...  The paper is divided into two parts: a report on the development of a window system application using the CommonLoops programming language, and a description of the implementation of another object-oriented  ...  , for listening to our comments on the metaclass kernel.  ... 
doi:10.1145/38765.38827 dblp:conf/oopsla/KempfHDS87 fatcat:yeuugv7q6fgsjfjc7k2tp324ri

StratOSphere: unification of code, data, location, scope, and mobility

D. Wu, D. Agrawal, A. El Abbadi
1999 Proceedings of the International Symposium on Distributed Objects and Applications  
The StratOSphere system provides a framework for distributed objects written in Java, unifying mobile code and distributed programming systems by providing the basic entities: relocatable instances and  ...  methods, persistent repositories, and mobile execution state.  ...  Though multiple inheritance of implementations is not supported in Java, a common technique known as mixins [laf97] emulates this feature.  ... 
doi:10.1109/doa.1999.793973 dblp:conf/doa/WuAA99 fatcat:cgymbqjvmjhqrpexkojjpsxite

Constrained Polymorphic Types for a Calculus with Name Variables

Davide Ancona, Paola Giannini, Elena Zucca, Marc Herbstritt
2018 Types for Proofs and Programs  
However, in order to prevent conflicts when instantiating name variables, the namepolymorphic types of such terms need to be equipped with simple inequality constraints.  ...  We show soundness of the type system.  ...  Acknowledgements We thank the referees for their helpful comments, the paper improved due to their suggestions.  ... 
doi:10.4230/lipics.types.2015.4 dblp:conf/types/AnconaGZ15 fatcat:d7ixygiabbfbrlodfzlqf4b7wu

Multitier Modules

Pascal Weisenburger, Guido Salvaneschi, Michael Wagner
2019 European Conference on Object-Oriented Programming  
Our case studies on distributed algorithms, distributed data structures, as well as on the Apache Flink task distribution system, show that multitier modules allow the definition of reusable (abstract)  ...  to the multitier nature of the language.  ...  Acknowledgements We would like to thank Philipp Schulz for the implementation of the first prototype of this work and all reviewers of this paper for their comments and suggestions.  ... 
doi:10.4230/lipics.ecoop.2019.3 dblp:conf/ecoop/WeisenburgerS19 fatcat:e6qs2jjewnagteu647pj6nhgpu

Objects and roles: modeling based on the dualistic view

T Tamai
1999 Information and Software Technology  
Now, object models are being used "seamlessly" from the analysis phase through the design phase and to the implementation phase.  ...  Software engineering has been producing a number of models or modeling methods, e.g. the data flow model, the state transition model, and the entity relationship model, just to name a few [35] .  ...  On the other hand, an approach based on multiple inheritance or a mixin type technique is already matured but, as easily guessed, hard to meet the requirement of dynamic change.  ... 
doi:10.1016/s0950-5849(99)00075-0 fatcat:izgeghjpsrgq7hijqi2zhenda4
« Previous Showing results 1 — 15 out of 56 results