Ondřej Lhoták

University of Waterloo
Country flagCanada

Research Interests

Explore related searches

Contact this professor

Get a free first email built on one of their papers, ready for you to edit and send yourself.

Articles (7)

Year:

2025

Year:

2024

Object-oriented programming has been bothered by an awkward feature for a long time: static members . Static members not only compromise the conceptual integrity of object-oriented programming, but also give rise to subtle initialization errors, such as reading non-initialized fields and deadlocks. The Scala programming language eliminated static members from the language, replacing them with global objects that present a unified object-oriented programming model. However, the problem of global object initialization remains open, and programmers still suffer from initialization errors. We propose partial ordering and initialization-time irrelevance as two fundamental principles for initializing global objects. Based on these principles, we put forward an effective static analysis to ensure safe initialization of global objects, which eliminates initialization errors at compile time. The analysis also enables static scheduling of global object initialization to avoid runtime overhead. The analysis is modular at the granularity of objects and it avoids whole-program analysis. To make the analysis explainable and tunable, we introduce the concept of regions to make context-sensitivity understandable and customizable by programmers.

Year:

2023

Reference immutability is a type based technique for taming mutation that has long been studied in the context of object-oriented languages, like Java. Recently, though, languages like Scala have blurred the lines between functional programming languages and object oriented programming languages. We explore how reference immutability interacts with features commonly found in these hybrid languages, in particular with higher-order functions – polymorphism – and subtyping. We construct a calculus System F<:M which encodes a reference immutability system as a simple extension of System F<: and prove that it satisfies the standard soundness and immutability safety properties.

Year:

2023

Year:

2023

Year:

2023

Year:

2021

Collaborators (2)

Jonathan Immanuel Brachthäuser

University of Tübingen

GERMANY
View details

Enze Xing

University of Waterloo

CANADA
View details
ApplyKite TwinLearns as you apply

Make your next move.

Prepare your application

Review drafts before you send them.