Charla "Ensuring that Programmers Keep their Promises"

Christophe Scholliers, Assistant Professor in Computer Science at UGent
24 Agosto, 2016 - 11:00
Auditorio Ramón Picarte, Piso 3, Edificio Norte
Eric Tanter

Christophe Scholliers obtained a  Master in Informatics at the Vrije Universiteit Brussel in 2006. After his studies he started a PhD as a teaching assistant at the Programming Technology Lab (PROG). In 2013 he obtained his PhD titled "Ambient Contracts" under the promotership of Wolfgang De Meuter (SOFT-VUB) and Éric Tanter (Pleiad-DCC). As a postdoctoral researcher he was appointed on the strategic research plan for growth (SRP) called “Foundations of Programming Models for Next-Generation Computing Platforms”. Since October 2015 he is an assistant professor in computer science at UGent.


With the proliferation of multicore processors, the development of concurrent programming language abstractions is becoming increasingly relevant. One commonly used language construct is a promise.  While promises aid developers in structuring their concurrent code, there are still a number of drawbacks which make concurrent programming with promises difficult for novice users. First, promises must be resolved with values of the correct type. Second, promises must be resolved exactly once. Third, in order to avoid stuck programs, accessing the value of a promise synchronously should only be allowed when the promise is ensured to be resolved. Current programming languages only signal some violations against these rules.  In this talk we present a linear type-and-effect system that is able to detect all violations statically.  We employ this linear type-and-effect system in a small functional language called LollyScript.