Behavioural Types for Memory and Method Safety in a Core Object-Oriented Language

Mario Bravetti, Adrian Francalanza, Iaroslav Golovanov, Hans Hüttel, Mathias S. Jakobsen, Mikkel K. Kettunen, António Ravara*

*Kontaktforfatter

Publikation: Bidrag til bog/antologi/rapport/konference proceedingKonferenceartikel i proceedingForskningpeer review

5 Citationer (Scopus)

Abstract

We present a type-based analysis ensuring memory safety and object protocol completion in the Java-like language Mungo. Objects are annotated with usages, typestates-like specifications of the admissible sequences of method calls. The analysis entwines usage checking, controlling the order in which methods are called, with a static check determining whether references may contain null values. It prevents null pointer dereferencing in a typestate-aware manner and memory leaks and ensures that the intended usage protocol of every object is respected and completed. The type system admits an algorithm that infers the most general usage with respect to a simulation preorder. The type system is implemented in the form of a type checker and a usage inference tool.

OriginalsprogEngelsk
TitelProgramming Languages and Systems - 18th Asian Symposium, APLAS 2020, Proceedings
RedaktørerBruno C. Oliveira
Antal sider20
ForlagSpringer
Publikationsdato2020
Sider105-124
ISBN (Trykt)978-3-030-64436-9
ISBN (Elektronisk)978-3-030-64437-6
DOI
StatusUdgivet - 2020
Begivenhed18th Asian Symposium on Programming Languages and Systems, APLAS 2020 - Fukuoka, Japan
Varighed: 30 nov. 20202 dec. 2020

Konference

Konference18th Asian Symposium on Programming Languages and Systems, APLAS 2020
Land/OmrådeJapan
ByFukuoka
Periode30/11/202002/12/2020
NavnLecture Notes in Computer Science
Vol/bind12470
ISSN0302-9743

Bibliografisk note

Funding Information:
Work partially supported by the EU H2020 RISE programme under the Marie Sk lodowska-Curie grant agreement No. 778233 (BehAPI), the UK EPSRC grant EP/K034413/1 (ABCD), and by NOVA LINCS (UIDB/04516/2020) via FCT.

Publisher Copyright:
© 2020, Springer Nature Switzerland AG.

Copyright:
Copyright 2020 Elsevier B.V., All rights reserved.

Fingeraftryk

Dyk ned i forskningsemnerne om 'Behavioural Types for Memory and Method Safety in a Core Object-Oriented Language'. Sammen danner de et unikt fingeraftryk.

Citationsformater