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. Semantic subtyping is an approach for defining subtyping relation based on set-theoreticmodels, rather than syntactic rules. On the one hand, this approach involves some non-trivial mathematical machinery in the background. On the other hand, final users of the language need not know this machinery and the resulting subtyping relation is very powerful and intuitive. While semantic subtyping is naturally linked to the structural one, we show how our framework can also accommodate the nominal subtyping. Several examples show the expressivity and the practical advantages of our proposal

Semantic subtyping for objects and classes / Dardha, Ornela; Gorla, Daniele; Varacca, Daniele. - In: COMPUTER JOURNAL. - ISSN 0010-4620. - STAMPA. - 60(5):(2017), pp. 636-656. [10.1093/comjnl/bxw080]

Semantic subtyping for objects and classes

GORLA, DANIELE;
2017

Abstract

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. Semantic subtyping is an approach for defining subtyping relation based on set-theoreticmodels, rather than syntactic rules. On the one hand, this approach involves some non-trivial mathematical machinery in the background. On the other hand, final users of the language need not know this machinery and the resulting subtyping relation is very powerful and intuitive. While semantic subtyping is naturally linked to the structural one, we show how our framework can also accommodate the nominal subtyping. Several examples show the expressivity and the practical advantages of our proposal
2017
Featherweight; Javanominal and structural subtyping; object-oriented languages; semantic subtyping; type theory
01 Pubblicazione su rivista::01a Articolo in rivista
Semantic subtyping for objects and classes / Dardha, Ornela; Gorla, Daniele; Varacca, Daniele. - In: COMPUTER JOURNAL. - ISSN 0010-4620. - STAMPA. - 60(5):(2017), pp. 636-656. [10.1093/comjnl/bxw080]
File allegati a questo prodotto
File Dimensione Formato  
Gorla_semantic_2017.pdf

accesso aperto

Tipologia: Versione editoriale (versione pubblicata con il layout dell'editore)
Licenza: Creative commons
Dimensione 944.4 kB
Formato Adobe PDF
944.4 kB Adobe PDF

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11573/945237
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 2
  • ???jsp.display-item.citation.isi??? 1
social impact