Skip to main content

Subtype polymorphism à la carte via machine learning on dependent types

Swan, Jerry, Johnson, Colin G., Brady, Edwin C. (2018) Subtype polymorphism à la carte via machine learning on dependent types. In: ISSTA/ECOOP 2018 Workshops. . pp. 14-16. ACM, New York, NY, USA ISBN 978-1-4503-5939-9. (doi:10.1145/3236454.3236469) (KAR id:73791)

PDF Author's Accepted Manuscript
Language: English
Download (133kB) Preview
[img]
Preview
PDF Publisher pdf
Language: English

Restricted to Repository staff only
Contact us about this Publication
[img]
Official URL
https://doi.org/10.1145/3236454.3236469

Abstract

The essential rationale for subtype polymorphism is adherence to the 'Open/Closed Principle' [12]: the ability to write framework code in terms of superclasses and subsequently invoke it with any subclass that exhibits 'proper subtyping' via the Liskov Substitution Principle (LSP) [11]. Formally, the LSP states that if ø(t : T) is a provable property of objects t of type T, then ø(s) should be true for objects s of subtype S of T. In practice, such properties have typically been those expressible via 'Design by Contract' [12], specifically preconditions, postconditions and invariants. Such abstraction via subtype polymorphism is intended to insulate against requirements change. However, when new requirements do necessitate a change of contract, the maintenance consequences can be severe. In the (typical) absence of explicit language or tool support, enforcement of proper subtyping is laborious and error-prone: contractual changes typically require manual inspection/repair of the class hierarchy to determine/address violations of the LSP.

Item Type: Conference or workshop item (Paper)
DOI/Identification number: 10.1145/3236454.3236469
Divisions: Faculties > Sciences > School of Computing
Depositing User: Colin Johnson
Date Deposited: 08 May 2019 09:32 UTC
Last Modified: 03 Jun 2019 09:46 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/73791 (The current URI for this page, for reference purposes)
Johnson, Colin G.: https://orcid.org/0000-0002-9236-6581
  • Depositors only (login required):

Downloads

Downloads per month over past year