A syntactic approach to type soundness
Information and Computation
Encapsulating objects with confined types
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
A Programming Logic for Sequential Java
ESOP '99 Proceedings of the 8th European Symposium on Programming Languages and Systems
A Logic of Object-Oriented Programs
TAPSOFT '97 Proceedings of the 7th International Joint Conference CAAP/FASE on Theory and Practice of Software Development
On Observing Nondeterminism and Concurrency
Proceedings of the 7th Colloquium on Automata, Languages and Programming
Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley))
Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley))
Ownership confinement ensures representation independence for object-oriented programs
Journal of the ACM (JACM)
A bisimulation for dynamic sealing
Theoretical Computer Science
A bisimulation for type abstraction and recursion
Journal of the ACM (JACM)
Refactoring and representation independence for class hierarchies: extended abstract
Proceedings of the 12th Workshop on Formal Techniques for Java-Like Programs
Object connectivity and full abstraction for a concurrent calculus of classes
ICTAC'04 Proceedings of the First international conference on Theoretical Aspects of Computing
Java JR: fully abstract trace semantics for a core java language
ESOP'05 Proceedings of the 14th European conference on Programming Languages and Systems
Bisimulations for untyped imperative objects
ESOP'06 Proceedings of the 15th European conference on Programming Languages and Systems
A type system for checking specialization of packages in object-oriented programming
Proceedings of the 27th Annual ACM Symposium on Applied Computing
Verifying backwards compatibility of object-oriented libraries using Boogie
Proceedings of the 14th Workshop on Formal Techniques for Java-like Programs
Model-Based compatibility checking of system modifications
ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
Hi-index | 0.00 |
We develop a fully abstract trace-based semantics for sets of classes in object-oriented languages, in particular for Java-like sealed packages. Our approach enhances a standard operational semantics such that the change of control between the package and the client context is made explicit in terms of interaction labels. By using traces over these labels, we abstract from the data representation in the heap, support class hiding, and provide fully abstract package denotations. The soundness and completeness of our approach is proven using innovative simulation techniques.