Giter Club home page Giter Club logo

eliasc.github.io's Introduction

Research

I am an assistant professor at Uppsala University, working on programming languages, semantics and type systems. I am involved in the Verona project together with Azure Research.

I used to be a post-doc researcher in David Broman{:target="blank"}'s group{:target="blank"} at KTH{:target="blank"}, 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{:target="blank"} and Dave Clarke{:target="blank"} at Uppsala University{:target="blank"}. There, I did research on type systems for controlling aliasing and preventing data-races in concurrent and parallel programs.

In 2018, I did an internship at Microsoft Research in Cambridge, working together with Matthew Parkinson{:target="blank"} and David Chisnall{:target="blank"} on compiler-based mitigation of the Spectre attacks.

I was one of the main contributors to Encore{:target="blank"}, 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 [](TODO: Page of its own).

I am always interested in discussing collaboration!

[](TODO: Research interests + link to summary of research (Kappa page?))

[](TODO: List co-authors for publications)

Publications and Presentations

  • [2024] Arrays in Practice: An Empirical Study of Array Access Patterns on the JVM -- Programming'24 (paper)
  • [2023] Reference Capabilities for Flexible Memory Management -- OOPSLA'23 (paper)
  • [2023] Encore: Coda -- Springer Nature (Paper to be posted)
  • [2023] Statically Resolvable Ambiguity -- POPL'23 (paper|artifact)
  • [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{:target="blank"})
  • [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{:target="blank"} | slides{:target="blank"})
  • [2017] Actors without Borders: Amnesty for Imprisoned State -- PLACES'17 (paper{:target="blank"} | slides{:target="blank"})
  • [2016] Reference Capabilities for Trait Based Reuse and Concurrency Control -- Technical Report (paper{:target="blank"})
  • [2016] Types for CAS: Relaxed Linearity with Ownership Transfer -- NWPT'16 (paper{:target="blank"})
  • [2016] LOLCAT: Relaxed Linear References for Lock-free Programming -- Technical Report (paper{:target="blank"})
  • [2016] Reference Capabilities for Concurrency Control -- ECOOP'16 (paper and talk{:target="blank"} | slides{:target="blank"} | poster{:target="blank"})
  • [2016] Kappa: Insights, Current Status and Future Work -- IWACO'16 (paper{:target="blank"} | slides{:target="blank"})
  • [2015] Refined Ownership: Fine-grained controlled internal sharing -- SFM'15 (paper{:target="blank"})
  • [2015] Parallel Objects for Multicores: A Glimpse at the Parallel Language Encore -- SFM'15 (paper{:target="blank"})
  • [2014] Capable: Capabilities for Scalability -- IWACO'14 (paper{:target="blank"} | slides{:target="blank"})

Community Service

Teaching

Since 2021 I am 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). In 2021 I was the proud recipient of the Union of Engineering and Science Student's Teaching Award!

Since 2023 I also teach a 5 ECTS credit course on Programming Language Semantics.

Previous courses taught include:

  • Computer Hardware Engineering (7.5 ECTS, KTH), 2019
  • Program Design and Data Structures (20 ECTS, UU), 2016-2017
  • Imperative and Object-Oriented Programming Methodology (20 ECTS, UU), 2012-2018

Students

I am the main supervisor of the following PhD students:

  • Matilda Blomqvist (since 2023)

I am currently co-supervising the following PhD students:

  • Ellen Arvidsson (since 2021)
  • Viktor Palmkvist (since 2021)
  • Beatrice Åkerblom (since 2019)

I am currently supervising the following bachelor thesis projects:

  • Emma Angetun -- Extending the Object Calculus OOlong
  • Linus Waehler -- Can ChatGPT Achieve Mastery? Using ChatCPT to Pass a Second Year University Programming Course

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{:target="blank"} in Uppsala. Here{:target="blank"} is a video of us performing of Vienna Teng's beautiful Hymn of Acxiom.
  • Since 2015 I am a singer in Uppsala Vokalensemble{:target="blank"}.
  • 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{:target="blank"} is a recording of my setting of Alfred Tennyson's Now Sleeps the Crimson Petal, performed by the women's choir Discordia{:target="blank"}. [](TODO: Another page)
  • 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{:target="blank"}.
  • I play bass in the now dormant band Morfis. Our album Dunia{:target="blank"} 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").

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.