Filters








20,097 Hits in 4.2 sec

Semantic Subtyping for Objects and Classes

Ornela Dardha, Daniele Gorla, Daniele Varacca
2016 Computer journal  
Semantic subtyping is an approach for defining subtyping relation based on set-theoretic models, rather than syntactic rules.  ...  In this paper, we propose an integration of structural subtyping with boolean connectives and semantic subtyping to define a Java-like programming language that exploits the benefits of both techniques  ...  ACM. 651 SEMANTIC SUBTYPING FOR OBJECTS AND CLASSES SECTION A: COMPUTER SCIENCE THEORY, METHODS AND TOOLS THE COMPUTER JOURNAL, VOL. 60 NO. 5, 2017 APPENDIX A.  ... 
doi:10.1093/comjnl/bxw080 fatcat:z2vjunge3vgjplnzytgcg4fkqu

Semantic Subtyping for Objects and Classes [chapter]

Ornela Dardha, Daniele Gorla, Daniele Varacca
2013 Lecture Notes in Computer Science  
We propose an integration of structural subtyping with boolean connectives and semantic subtyping to define a Java-like programming language that exploits the benefits of both techniques.  ...  Semantic subtyping is an approach to defining subtyping relation based on set-theoretic models, rather than syntactic rules.  ...  There are two main approaches for defining the subtyping relation: the syntactic approach and the semantic one.  ... 
doi:10.1007/978-3-642-38592-6_6 fatcat:zkpx2dqzrzeg7dwuukj74xrprm

Preserving Properties under Change [chapter]

Heike Wehrheim
2004 Lecture Notes in Computer Science  
Object-Z Object-oriented extension of Z (Duke, Rose, Smith) Object-Z classes: C State [attributes] Init [initialisation] enable m, effect m [methods] Object-Z Semantics for OZ classes Atomic propositions  ...  fair path Preserving LTL properties of Object-Z classesFor subtypes: all properties • For others: use slicing to compute properties FMCO 2003 -p.32/32 Preserving LTL properties of Object-Z classes  ... 
doi:10.1007/978-3-540-30101-1_16 fatcat:r2x3put2fjdirkuumfnz5d5kbe

SFJ: An Implementation of Semantic Featherweight Java [chapter]

Artem Usov, Ornela Dardha
2020 Lecture Notes in Computer Science  
Dardha et al. [11, 12] defined boolean types and semantic subtyping for Featherweight Java (FJ) and integrated both nominal and structural subtyping, thus exploiting the benefits of both approaches.  ...  An orthogonal subtyping question, typical of object-oriented languages, is the nominal versus the structural subtyping.  ...  They use boolean connectives and, not, or for their predicates, however they do not define semantic subtyping for their language.  ... 
doi:10.1007/978-3-030-50029-0_10 fatcat:my5d4zl4mnf6rlnjy5zd6su3zq

Towards a semantic model for Java wildcards

Alexander J. Summers, Nicholas Cameron, Mariangiola Dezani-Ciancaglini, Sophia Drossopoulou
2010 Proceedings of the 12th Workshop on Formal Techniques for Java-Like Programs - FTFJP '10  
In this paper we propose a semantic model for Java wildcards, inspired by work on semantic subtyping, which traditionally interprets types as sets of possible values.  ...  We identify a restricted (but nonetheless rich) type language for which the syntactic notion of subtyping is both sound and complete.  ...  Acknowledgements We thank the anonymous FTfJP reviewers for feedback and good suggestions. Sophia and Nick are grateful to Dave Clarke for awakening their interest in semantic approaches to typing.  ... 
doi:10.1145/1924520.1924522 dblp:conf/ecoop/SummersCDD10 fatcat:xa2tq6u3zbgn3h7oq5ewrxe3ym

Sound Merging and Differencing for Class Diagrams [chapter]

Uli Fahrenberg, Mathieu Acher, Axel Legay, Andrzej Wąsowski
2014 Lecture Notes in Computer Science  
The differences we synthesize are represented using class diagram notation (not edits, or instances), which allows creation of a simple yet flexible algebra for diffing and merging.  ...  This paper presents the first known (to the best of our knowledge) automatic model merging and differencing operators supported by a formal semantic theory guaranteeing that they are semantically sound  ...  of class diagrams (and is the lowest upper bound for subtyping).  ... 
doi:10.1007/978-3-642-54804-8_5 fatcat:ft5cymrqk5fhhbp3wp7niw2uvu

Structural model subtyping with OCL constraints

Artur Boronat
2017 Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering - SLE 2017  
We refine a type system for object-oriented programming, with multiple inheritance, to support model types in order to analyse its advantages and limitations with respect to reuse in MDE.  ...  In this work, we revisit the traditional notion of object subtyping based on subsumption, discarded by other approaches to model subtyping.  ...  Acknowledgments The author thanks the anonymous reviewers for their insightful and helpful feedback. This work was partially supported by InnovateUK KTP 10567.  ... 
doi:10.1145/3136014.3136026 dblp:conf/sle/Boronat17 fatcat:kvbixi4utngzdgwopdddykcwlm

Refactoring Alloy Specifications

Rohit Gheyi, Paulo Borba
2004 Electronical Notes in Theoretical Computer Science  
This paper proposes modeling laws for Alloy, a formal object-oriented modeling language.  ...  These laws are important not only to define the axiomatic semantics of Alloy but also to guide and formalize popular software development practices.  ...  Types are partitioned into Class and Interface types and Object is a particular class. The following Alloy's fragment describes the object model in Figure 2 .  ... 
doi:10.1016/j.entcs.2004.04.014 fatcat:yvpv6vj5svew3aojourwkyj6ya

Foo

Prodromos Gerakios, George Fourtounis, Yannis Smaragdakis
2015 Proceedings of the 17th Workshop on Formal Techniques for Java-like Programs - FTfJP '15  
• Substitutivity-of-subtypes-for-supertypes still captured by rules: T-I "you can use a subtype for formal arguments" T-M "you can use a subtype for method bodies" • Without subsumption, the familiar substitution  ...  } ... new C { def field(d : Object) = 42 } • Informally, we use obj.field instead of obj.field(new Object { }) Semantics Formal properties Future directions Fundamentals • Basic idea: hybrid types  ...  Variables, new objects, method invocations: (T-C)  ... 
doi:10.1145/2786536.2786540 dblp:conf/ecoop/GerakiosFS15 fatcat:n3zu4iboabh2hexoghik35cw6m

An Approach to Behavioral Subtyping Based on Static Analysis

Francesco Logozzo
2005 Electronical Notes in Theoretical Computer Science  
Furthermore we show how this approach yields a more semantic characterization of class hierarchies and how it can be used for an effective modular analysis of polymorphic code.  ...  In mainstream object oriented languages the subclass relation is defined in terms of subtyping, i.e. a class A is a subclass of B if the type of A is a subtype of B.  ...  Simon and E. Upton.  ... 
doi:10.1016/j.entcs.2004.02.074 fatcat:cteijqkop5cpdhorz6ew3yv72y

Object-Oriented Nets with Algebraic Specifications: The CO-OPN/2 Formalism [chapter]

Olivier Biberstein, Didier Buchs, Nicolas Guelfi
2001 Lecture Notes in Computer Science  
A semantic extension for the management of the object references is de ned. Inheritance and subtyping are clearly distinguished. Interaction between objects consists of synchronizations.  ...  We introduce the basic principles of the formalism, and describe how some aspects of objectorientation { such as the notions of class/object, object reference, inheritance and subtyping { are taken into  ...  Acknowledgments We wish to thank Julie Vachon and Jarle Hulaas for their numerous and valuable comments on this paper.  ... 
doi:10.1007/3-540-45397-0_3 fatcat:7tcco6ix45ckhoxkjchhwpzvzq

A Coalgebraic Semantics of Subtyping

Erik Poll
2000 Electronical Notes in Theoretical Computer Science  
This paper shows that this semantics provides a smooth interpretation for subtyping, a central notion in object-oriented programming.  ...  Coalgebras have been proposed as formal basis for the semantics of objects in the sense of object-oriented programming.  ...  I would like to thank the anonymous referees for many valuable suggestions for improvements.  ... 
doi:10.1016/s1571-0661(05)80352-4 fatcat:o5yjjxggmrhqxhamjmazq4gi7m

A Coalgebraic Semantics of Subtyping

Erik Poll
2001 RAIRO - Theoretical Informatics and Applications  
This paper shows that this semantics provides a smooth interpretation for subtyping, a central notion in object-oriented programming.  ...  Coalgebras have been proposed as formal basis for the semantics of objects in the sense of object-oriented programming.  ...  Acknowledgments I would like to thank the anonymous referees for many valuable suggestions for improvements.  ... 
doi:10.1051/ita:2001109 fatcat:ulfpkebnznerdlkvzlx3x6wdjq

Object Orientation without Extending Z [chapter]

Mark Utting, Shaochun Wang
2003 Lecture Notes in Computer Science  
It also enforces behavioural subtyping, unlike most object-oriented programming languages. This paper explains the proposed style, with examples, and discusses its advantages and disadvantages.  ...  The good news of this paper is that without extending Z, we can elegantly specify object-oriented systems, including encapsulation, inheritance and subtype polymorphism (dynamic dispatch).  ...  This paper uses a value semantics for objects, rather than reference semantics, but the conclusion briefly discusses how our approach can also support references and object identity.  ... 
doi:10.1007/3-540-44880-2_20 fatcat:2i5qqkzohvco7ixgzmrjolejpq

Specification and (property) inheritance in CSP-OZ

Ernst-Rüdiger Olderog, Heike Wehrheim
2005 Science of Computer Programming  
.), Formal Methods for Open Object-Based Distributed Systems, FMOODS'97, vol. 2, Chapman & Hall, 1997, pp. 423-438] is a combination of Communicating Sequential Processes (CSP) and Object-Z (OZ).  ...  It enables the specification of systems having both a state-based and a behaviouroriented view using the object-oriented concepts of classes, instantiation and inheritance.  ...  Acknowledgement We thank the referee for detailed and helpful comments on this paper.  ... 
doi:10.1016/j.scico.2004.05.017 fatcat:czxe4ic5fvfihchdjhmmhtnnce
« Previous Showing results 1 — 15 out of 20,097 results