Static typing of complex presence constraints in interfaces

Nathalie Oostvogels, Joeri De Koster, Wolfgang De Meuter

Onderzoeksoutput: Conference paperResearch

1 Citaat (Scopus)


Many functions in libraries and APIs have the notion of optional parameters, which can be mapped onto optional properties of an object representing those parameters.
The fact that properties are optional opens up the possibility for APIs and libraries to design a complex "dependency logic" between properties: for example, some properties may be mutually exclusive, some properties may depend on others, etc.
Existing type systems are not strong enough to express such dependency logic, which can lead to the creation of invalid objects and accidental usage of absent properties.
In this paper we propose TypeScriptIPC: a variant of TypeScript with a novel type system that enables programmers to express complex presence constraints on properties.
We prove that it is sound with respect to enforcing complex dependency logic defined by the programmer when an object is created, modified or accessed.
Originele taal-2English
Titel32nd European Conference on Object-Oriented Programming (ECOOP 2018)
RedacteurenTodd Millstein
Plaats van productieAmsterdam, Netherlands
UitgeverijSchloss Dagstuhl - Leibniz-Zentrum für Informatik
Aantal pagina's27
ISBN van elektronische versie978-3-95977-079-8
StatusPublished - 5 jul 2018
EvenementEuropean Conference on Object-Oriented Programming (ECOOP 2018) - Movenpick Hotel Amsterdam City Centre, Amsterdam, Netherlands
Duur: 19 jul 201821 jul 2018


ConferenceEuropean Conference on Object-Oriented Programming (ECOOP 2018)
Verkorte titelECOOP
Internet adres

Vingerafdruk Duik in de onderzoeksthema's van 'Static typing of complex presence constraints in interfaces'. Samen vormen ze een unieke vingerafdruk.

Citeer dit