Are you an EPFL student looking for a semester project?
Work with us on data science and visualisation projects, and deploy your project as an app on top of GraphSearch.
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.
Loading
Loading
Loading
Loading
Paolo Giosuè Giarrusso, Ondrej Lhoták, Fengyun Liu, Martin Odersky
Paolo Giosuè Giarrusso, Ondrej Lhoták, Fengyun Liu, Martin Odersky