SFJ: an Implementation of Semantic Featherweight Java

Usov, A. and Dardha, O. (2020) SFJ: an Implementation of Semantic Featherweight Java. In: 22nd IFIP WG 6.1 International Conference, COORDINATION 2020, Valletta, Malta, 15-19 Jun 2020, pp. 153-168. ISBN 9783030500283 (doi: 10.1007/978-3-030-50029-0_10)

[img]
Preview
Text
222898.pdf - Accepted Version

821kB

Abstract

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.

Item Type:Conference Proceedings
Status:Published
Refereed:Yes
Glasgow Author(s) Enlighten ID:Dardha, Dr Ornela and Usov, Mr Artem
Authors: Usov, A., and Dardha, O.
College/School:College of Science and Engineering > School of Computing Science
ISSN:0302-9743
ISBN:9783030500283
Published Online:10 June 2020
Copyright Holders:Copyright © 2020 IFIP International Federation for Information Processing
First Published:First published in Coordination Models and Languages: 153-168
Publisher Policy:Reproduced in accordance with the publisher copyright policy

University Staff: Request a correction | Enlighten Editors: Update this record

Project CodeAward NoProject NamePrincipal InvestigatorFunder's NameFunder RefLead Dept
168293From Data Types to Session Types - A Basis for Concurrency and Distribution.Simon GayEngineering and Physical Sciences Research Council (EPSRC)EP/K034413/1Computing Science
300253BEHAPIOrnela DardhaEuropean Commission (EC)778233Computing Science