Match-O, a dialect of Eiffel with match-types
Résumé
It is well known that the Eiffel language allows covariant redefinition. Regardless of system-level validity rules, Eiffel is not type safe. In this paper, we present a dialect of Eiffel called Match-O, which prohibits covariant redefinition. We introduce a new kind of types, the match-types, inspired by the papers of Kim Bruce. The scope of this project is many-fold: – allowing binary methods; – keeping sound " mytype method specialization " , i.e. anchored type using Current; – allowing subtyping in all other sound cases. We claim that match-types can be added in the Eiffel type system to eliminate type unsoundness without blocking many interesting Eiffel programs (e.g. the ones with " binary methods "). We have implemented a compiler for Match-O and we have experimented our dialect on a large system using the original source code of SmallEiffel itself.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...