Research
I am an assistant professor at Uppsala University, working on
programming languages, semantics and type systems. (More info will
be added soon)
Before that I was a post-doc researcher in David
Broman’s
group at
KTH, working on
heterogeneous model compilers and semantics. I am currently
involved in two projects; one relating to composition of language
semantics, and one relating
to full-stack verification of programs synthesized from timed
automata.
I did my PhD with Tobias
Wrigstad and Dave
Clarke at
Uppsala University. There,
I did research on type systems for controlling aliasing and
preventing data-races in concurrent and parallel programs.
From April to July in 2018, I did an internship at Microsoft
Research in Cambridge, working together with Matthew
Parkinson
and David
Chisnall on
compiler-based mitigation of the
Spectre attacks.
I am one of the main contributors
to Encore, a
highly concurrent object-oriented programming language. Encore’s
type system guarantees the absence of data-races and is based on
my work on Kappa .
Publications and Presentations
- [2021] Resolvable ambiguity: principled resolution of
syntactically ambiguous programs – CC’21
(paper)
- [2020] Reference Capabilities for Safe Parallel Array
Programming – Programming’20 (paper)
- [2019] Developing a Monadic Type Checker for an Object-Oriented
Language: An Experience Report – SLE’19 (Distinguished Artifact Award)
(preprint|artifact)
- [2019] Progress Report: Exploring API Design for Capabilities
for Programming with Arrays – ICOOOLPS’19 (paper)
- [2018] OOlong: a concurrent object calculus for extensibility
and reuse – ACM SIGAPP (paper |
artifact)
- [2018] Attached and Detached Closures in Actors –
AGERE@SPLASH’18 (paper | slides)
- [2018] Cflat: A New Modular Approach to Implementing Efficient
and Tunable Collections – Onward!
(paper)
- [2018] Bestow and Atomic: Concurrent Programming using
Isolation, Delegation and Grouping – JLAMP
(paper)
- [2018] Parallel programming with arrays in Kappa –
ARRAY@PLDI’18
(paper)
- [2018] Forward to a Promising Future – COORDINATION’18 (Best Paper Award)
(paper)
- [2018] Capability-Based Type Systems for Concurrency Control – PhD Thesis
(extensive summary)
- [2017] OOlong: An Extensible Concurrent Object Calculus – OOPPS@SAC’17
(preprint | slides | artifact)
- [2017] Reference Capabilities for Concurrency & Scalability: an Experience Report – OCAP’17
(slides | video forthcoming)
- [2017] Mastery Learning-Like Teaching with Achievements – SPLASH-E’17
(paper)
- [2017] Relaxed Linear References for Lock-Free Data Structures – ECOOP’17
(paper and talk | slides)
- [2017] Actors without Borders: Amnesty for Imprisoned State – PLACES’17
(paper | slides)
- [2016] Reference Capabilities for Trait Based Reuse and Concurrency Control – Technical Report
(paper)
- [2016] Types for CAS: Relaxed Linearity with Ownership Transfer – NWPT’16
(paper)
- [2016] LOLCAT: Relaxed Linear References for Lock-free Programming – Technical Report
(paper)
- [2016] Reference Capabilities for Concurrency Control – ECOOP’16
(paper and talk | slides | poster)
- [2016] Kappa: Insights, Current Status and Future Work – IWACO’16
(paper | slides)
- [2015] Refined Ownership: Fine-grained controlled internal sharing – SFM’15
(paper)
- [2015] Parallel Objects for Multicores: A Glimpse at the Parallel Language Encore – SFM’15
(paper)
- [2014] Capable: Capabilities for Scalability – IWACO’14
(paper | slides)
- [2021] SPLASH’21, student research competition judge
- [2021] SLE’21, artifact evaluation co-chair
- [2021] AGERE’21, member of the organizing committee.
- [2020] AGERE’20, member of the organizing committee.
- [2020] OOPSLA’20 Artifact Evaluation Committee.
- [2020] PLDI’21 Artifact Evaluation Committee.
- [2019] AGERE’19, member of the organizing committee.
- [2019] LCTES’19 Artifact Evaluation Committee
- [2019] PLDI’19 Artifact Evaluation Committee
- [2018]
ECOOP’18 Artifact Evaluation Committee
- [2018]
PLDI’18 Artifact Evaluation Committee
- [2017]
OOPSLA’17 Artifact Evaluation Committee
- [2017]
IWACO’17, co-chair and
organizer together with Juliana Franco.
- [2017]
ECOOP’17 Artifact Evaluation Committee
- [2017]
Subreviewing for ECOOP and OOPSLA
- [2016]
OOPSLA’16 Artifact Evaluation Committee
- [2016]
Subreviewing for ECOOP and OOPSLA
- [2015]
Subreviewing for PLDI, ECOOP, OOPSLA, CONCUR and SAC
- [2014] ECOOP’14, local student aid
Teaching
During 2021 I was the main teacher of a second year 20 ECTS
credits course at Uppsala University called Imperative and
Object-Oriented Programming Methodology (or IOOPM for short).
During 2019 I shared the lectures of a 7.5 ECTS credits course at
KTH called Computer Hardware Engineering, given by David Broman.
During my PhD I was the main teaching assistant for IOOPM (see
above), given by Tobias Wrigstad. In 2017, Tobias was voted
teacher of the year by the CS and IT students!
During 2016 and 2017 I shared the lectures of another 20 ECTS
credits course at Uppsala University called Program Design and
Data Structures.
During my undergraduate studies I worked as a TA and certified
Supplemental Instructions mentor for several courses on functional
programming and algorithms.
Students
I am currently co-supervising the following PhD students:
I am currently supervising the following bachelor thesis projects:
- Emma Angetun – Extending the Object Calculus OOlong
I have supervised the following master thesis projects:
- Alfrida Mattisson – Automatically Choosing Implementations of Abstract Data Types
I have supervised the following bachelor thesis projects:
Personal
I spend a lot of my free time on listening to and creating music.
- From 2008 to 2017 I was the conductor of
Kalmar Nation’s Choir
in Uppsala.
Here
is a video of us performing of Vienna Teng’s beautiful Hymn of Acxiom.
- Since 2015 I am a singer in
Uppsala Vokalensemble.
- I also like to write and arrange choir music.
Here is a
recording of my arrangement of the traditional Swedish hymn “Den
blomstertid nu kommer”. You can also buy the arrangement!
Here
is a recording of my setting of Alfred Tennyson’s Now Sleeps the
Crimson Petal, performed by the women’s choir
Discordia.
- I play the electric and upright
bass. Here is a
recording I made as a Christmas present for the friend who
introduced me to the wonderful music of Vulfpeck.
- I play bass in the now dormant band Morfis. Our album
Dunia
from 2013 is on Spotify! I wrote and arranged the songs Gånglåt
från Gottsunda (“Walking Song from Gottsunda”), Cykeltjuven
(“The Bicycle Thief”) and Kometen (“The Comet”).