Please use this identifier to cite or link to this item:
https://www.um.edu.mt/library/oar/handle/123456789/86058
Title: | Behavioural types for memory and method safety in a core object-oriented language |
Other Titles: | Programming Languages and Systems. APLAS 2020. Lecture Notes in Computer Science, vol 12470 |
Authors: | Bravetti, Mario Francalanza, Adrian Golovanov, Iaroslav Hüttel, Hans Jakobsen, Mathias Kettunen, Mikkel K. Ravara, António |
Keywords: | Object-oriented programming (Computer science) Object-oriented programming languages Computer algorithms |
Issue Date: | 2020 |
Publisher: | Springer Nature Switzerland AG |
Citation: | Bravetti, M., Francalanza, A., Golovanov, I., Hüttel, H., Jakobsen, M., Kettunen, M. K., & Ravara, A. (2020). Behavioural types for memory and method safety in a core object-oriented language. 18th Asian Symposium, APLAS 2020, Fukuoka. 105-124. |
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. |
URI: | https://www.um.edu.mt/library/oar/handle/123456789/86058 |
Appears in Collections: | Scholarly Works - FacICTCS |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
Behavioural Types for Memory.pdf Restricted Access | 376.13 kB | Adobe PDF | View/Open Request a copy |
Items in OAR@UM are protected by copyright, with all rights reserved, unless otherwise indicated.