Loading...
research report
Celsius: A Model for Safe Initialization of Objects
January 9, 2020
Accessing uninitialized data during object initialization is a common and subtle programming error. This error is either not prevented by mainstream languages, like in Java, C++, Scala, or it is prevented by greatly restricting initialization patterns, like in Swift. In this paper, we propose a model called Celsius for safe and modular initialization of objects, and prove its soundness. We extend the model and implement a prototype in Scala. The experiments on several real-world Scala projects show that the design requires few programmer annotations.
Use this identifier to reference this record
Loading...
Name
oopsla19.pdf
Access type
openaccess
Size
583.03 KB
Format
Adobe PDF
Checksum (MD5)
8b196573456f85b65828a996c75641ed