SFJ: An Implementation of Semantic Featherweight Java - Inria - Institut national de recherche en sciences et technologies du numérique
Communication Dans Un Congrès Année : 2020

SFJ: An Implementation of Semantic Featherweight Java

Résumé

There are two approaches to defining subtyping relations: the syntactic and the semantic approach. In semantic subtyping, one defines a model of the language and an interpretation of types as subsets of this model. Subtyping is defined as inclusion of subsets denoting types.An orthogonal subtyping question, typical of object-oriented languages, is the nominal versus the structural subtyping. 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. However, these benefits were illustrated only at a theoretical level, but not exploited practically.We present SFJ—Semantic Featherweight Java, an implementation of FJ which features boolean types, semantic subtyping and integrates nominal as well as structural subtyping. The benefits of SFJ, illustrated in the paper and the accompanying video (with audio/subtitles) [27], show how static type-checking of boolean types and semantic subtyping gives higher guarantees of program correctness, more flexibility and compactness of program writing.
Fichier principal
Vignette du fichier
495623_1_En_10_Chapter.pdf (436.99 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03274001 , version 1 (29-06-2021)

Licence

Identifiants

Citer

Artem Usov, Ornela Dardha. SFJ: An Implementation of Semantic Featherweight Java. 22th International Conference on Coordination Languages and Models (COORDINATION), Jun 2020, Valletta, Malta. pp.153-168, ⟨10.1007/978-3-030-50029-0_10⟩. ⟨hal-03274001⟩
81 Consultations
34 Téléchargements

Altmetric

Partager

More