Write a Blog >>
SLE 2020
Sun 15 - Fri 20 November 2020 Online Conference
co-located with SPLASH 2020
Mon 16 Nov 2020 14:00 - 14:20 at SPLASH-III - Chair(s): Vadim Zaytsev
Tue 17 Nov 2020 02:00 - 02:20 at SPLASH-III - Chair(s): Vadim Zaytsev

Swift is a modern general-purpose programming language, designed to be a replacement for C-based languages. Although primarily directed at development of applications for Apple's operating systems, Swift's adoption has been growing steadily in other domains, ranging from server-side services to machine learning. This success can be partly attributed to a rich type system that enables the design of safe, fast, and expressive programming interfaces. Unfortunately, this richness comes at the cost of complexity, setting a high entry barrier to exploit Swift's full potential. Furthermore, existing documentation typically only relies on examples, leaving new users with little help to build a deeper understanding of the underlying rules and mechanisms.

This paper aims to tackle this issue by laying out the foundations for a formal framework to reason about Swift's type system. We introduce Featherweight Swift, a minimal language stripped of all features not essential to describe its typing rules. Featherweight Swift features classes and protocol inheritance, supports retroactive modeling, and emulates Swift's overriding mechanisms. Yet its formalization fits on a few pages. We present Featherweight Swift's syntax and semantics. We then elaborate on the usability of our framework to reason about Swift's features, future extensions, and implementation by discussing a bug in Swift's compiler, discovered throughout the design of our calculus.

Mon 16 Nov
Times are displayed in time zone: Central Time (US & Canada) change

13:00 - 14:20: SLE at SPLASH-III +12h
Chair(s): Vadim ZaytsevUniversity of Twente, Netherlands
13:00 - 13:20
Talk
SLE
Christoff RossouwStellenbosch University, South Africa, Bernd FischerStellenbosch University, South Africa
Link to publication DOI Media Attached
13:20 - 13:40
Talk
SLE
Phillip van HeerdenStellenbosch University, Moeketsi RaselimoStellenbosch University, South Africa, Konstantinos (Kostis) SagonasUppsala University, Sweden, Bernd FischerStellenbosch University, South Africa
Link to publication DOI Media Attached
13:40 - 14:00
Talk
SLE
Chelsea BarraballStellenbosch University, South Africa, Moeketsi RaselimoStellenbosch University, South Africa, Bernd FischerStellenbosch University, South Africa
Link to publication DOI Media Attached
14:00 - 14:20
Talk
SLE
Dimitri RacordonUniversity of Geneva, Switzerland, Didier BuchsUniversity of Geneva, Switzerland
Link to publication DOI Media Attached

Tue 17 Nov
Times are displayed in time zone: Central Time (US & Canada) change

01:00 - 02:20: SLE at SPLASH-III
Chair(s): Vadim ZaytsevUniversity of Twente, Netherlands
01:00 - 01:20
Talk
SLE
Christoff RossouwStellenbosch University, South Africa, Bernd FischerStellenbosch University, South Africa
Link to publication DOI Media Attached
01:20 - 01:40
Talk
SLE
Phillip van HeerdenStellenbosch University, Moeketsi RaselimoStellenbosch University, South Africa, Konstantinos (Kostis) SagonasUppsala University, Sweden, Bernd FischerStellenbosch University, South Africa
Link to publication DOI Media Attached
01:40 - 02:00
Talk
SLE
Chelsea BarraballStellenbosch University, South Africa, Moeketsi RaselimoStellenbosch University, South Africa, Bernd FischerStellenbosch University, South Africa
Link to publication DOI Media Attached
02:00 - 02:20
Talk
SLE
Dimitri RacordonUniversity of Geneva, Switzerland, Didier BuchsUniversity of Geneva, Switzerland
Link to publication DOI Media Attached