Research
I am a post-doc researcher in David
Broman’s
group at
KTH, working on
heterogeneous model compilers and semantics.
I did my PhD with Tobias
Wrigstad and Dave
Clarke at
Uppsala University. There,
I did research on programming languages, in particular 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
- [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)
Colleagues
At Uppsala University I have had the privilege of working in the same
group as the following PhD students:
Teaching
I was the main teaching assistant for a second year 20 ECTS credits
course called Imperative and Object-Oriented Programming
Methodology, 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 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 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 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”).