Master’s Thesis Presentation • Programming Languages • A Type System With Containers

Monday, September 20, 2021 10:00 am - 10:00 am EDT (GMT -04:00)

Please note: This master’s thesis presentation will be given online.

Michael Thode, Master’s candidate
David R. Cheriton School of Computer Science

Supervisor: Professor Ondřej Lhoták

In this presentation we will introduce the concept of containers as they apply to programming languages. Encapsulation is a common topic in programming language with well understood benefits. Here, we will investigate its opposite, namely containment. This includes a demonstration of how containers can be integrated into a programming language and what benefits they can bring. We show how containers can enable pass-by-value semantics, copying of complex objects and object serialization.

To demonstrate the feasibility of the ideas, we’ll also demonstrate a container inferencing algorithm to minimize the extra syntax needed for container specification. We’ll discuss the formal result showing the safety of a container type system. We show that correctly typed programs will obey all container restrictions at run-time. We show that as container labels are translated across scopes (e.g. a function call), the physical containers remain consistent.


To join this master’s thesis presentation on MS Teams, please go to https://teams.microsoft.com/l/meetup-join/19%3ameeting_MzE4OTE5ZjYtMmY5Zi00N2ZjLTgwNDItNDlhNjQ3ZWM0NjVj%40thread.v2/0?context=%7b%22Tid%22%3a%22723a5a87-f39a-4a22-9247-3fc240c01396%22%2c%22Oid%22%3a%22ee8fe05c-6aea-4c8d-9c80-fb621926b711%22%7d.