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

02/28/2020
by   Mario Bravetti, et al.
0

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. The analysis prevents null pointer dereferencing and memory leaks and ensures that the intended usage protocol of every object is respected and completed. The type system has been implemented in the form of a type checker.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset