Master’s Thesis Presentation • Programming Languages • A Type System With ContainersExport this event to calendar

Monday, September 20, 2021 — 10:00 AM EDT

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.

Location 
Online master’s thesis presentation
200 University Avenue West

Waterloo, ON N2L 3G1
Canada
Event tags 

S M T W T F S
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
  1. 2021 (205)
    1. December (16)
    2. November (13)
    3. October (12)
    4. September (21)
    5. August (20)
    6. July (17)
    7. June (11)
    8. May (16)
    9. April (27)
    10. March (20)
    11. February (13)
    12. January (19)
  2. 2020 (217)
    1. December (18)
    2. November (12)
    3. October (7)
    4. September (21)
    5. August (28)
    6. July (14)
    7. June (18)
    8. May (16)
    9. April (20)
    10. March (16)
    11. February (25)
    12. January (22)
  3. 2019 (255)
  4. 2018 (217)
  5. 2017 (36)
  6. 2016 (21)
  7. 2015 (36)
  8. 2014 (33)
  9. 2013 (23)
  10. 2012 (4)
  11. 2011 (1)
  12. 2010 (1)
  13. 2009 (1)
  14. 2008 (1)