On understanding types, data abstraction, and polymorphism
ACM Computing Surveys (CSUR) - The MIT Press scientific computation series
Information and Computation - Semantics of Data Types
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Eiffel: the language
Programming with intersection types and bounded polymorphism
Programming with intersection types and bounded polymorphism
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Types and programming languages
Types and programming languages
A New Type Checking Approach for OCL Version 2.0?
Object Modeling with the OCL, The Rationale behind the Object Constraint Language
OCL: Syntax, Semantics, and Tools
Object Modeling with the OCL, The Rationale behind the Object Constraint Language
Information and Computation - TACS 2001
Higher-order subtyping and its decidability
Information and Computation
Formalizing UML Models and OCL Constraints in PVS
Electronic Notes in Theoretical Computer Science (ENTCS)
Typechecking UML static models
UML'99 Proceedings of the 2nd international conference on The unified modeling language: beyond the standard
Hi-index | 0.00 |
Based on our experience in implementing a type-checker for the Object Constraint Language (OCL), we observed that OCL is not suitable for constraining a system under development, because changes in the underlying class diagram unnecessarily invalidate the type correctness of constraints, while their semantic value does not change. Furthermore, the type system of OCL does not support templates. To alleviate these problems, we extended the type system of OCL with intersection and union types and bounded operator abstraction. The main advantage of our type system is that it allows more changes in the contextual class diagrams without adapting the OCL constraints.