activity
20172025
most citedReference Capabilities for Flexible Memory Management: Extended Version

15 citations · 49 across the 13 of their papers we have counts for

collaborators

14 papers

cs.PL2025

Floating-Point Usage on GitHub: A Large-Scale Study of Statically Typed Languages

Andrea Gilot, Tobias Wrigstad, Eva Darulova

Reasoning about floating-point arithmetic is notoriously hard. While static and dynamic analysis techniques or program repair have made significant progress, more work is still nee…

cs.PL2025

Monk: Opportunistic Scheduling to Delay Horizontal Scaling

Marina Shimchenko, Erik Österlund, Tobias Wrigstad

In modern server computing, efficient CPU resource usage is often traded for latency. Garbage collection is a key aspect of memory management in programming languages like Java, bu…

cs.PL2024★ 5 cited

Scheduling Garbage Collection for Energy Efficiency on Asymmetric Multicore Processors

Marina Shimchenko, Erik Österlund, Tobias Wrigstad

The growing concern for energy efficiency in the Information and Communication Technology (ICT) sector has prompted the exploration of resource management techniques. While hardwar…

cs.PL2023★ 15 cited

Reference Capabilities for Flexible Memory Management: Extended Version

Ellen Arvidsson, Elias Castegren, Sylvan Clebsch +4

Verona is a concurrent object-oriented programming language that organises all the objects in a program into a forest of isolated regions. Memory is managed locally for each region…

cs.PL2022

Rusty Links in Local Chains

James Noble, Julian Mackay, Tobias Wrigstad

Rust successfully applies ownership types to control memory allocation. This restricts the programs' topologies to the point where doubly-linked lists cannot be programmed in Safe…

cs.PL2021

Dala: A Simple Capability-Based Dynamic Language Design For Data Race-Freedom

Kiko Fernandez-Reyes, Isaac Oscar Gariano, James Noble +3

Dynamic languages like Erlang, Clojure, JavaScript, and E adopted data-race freedom by design. To enforce data-race freedom, these languages either deep copy objects during actor (…

cs.SE2020★ 14 cited

Jupyter Notebooks on GitHub: Characteristics and Code Clones

Malin Källén, Tobias Wrigstad

Jupyter notebooks has emerged as a standard tool for data science programming. Programs in Jupyter notebooks are different from typical programs as they are constructed by a collec…

cs.PL2019

Towards Gradual Checking of Reference Capabilities

Kiko Fernandez-Reyes, Isaac Oscar Gariano, James Noble +1

Concurrent and parallel programming is difficult due to the presence of memory side-effects, which may introduce data races. Type qualifiers, such as reference capabilities, can re…

cs.CY2019★ 3 cited

Mastery Learning-Like Teaching with Achievements

Tobias Wrigstad, Elias Castegren

This paper describes the design of a second-year, 20 ECTS credit course on imperative and object-oriented programming. The key design rhetoric is encouraging students to assume res…

cs.PL2019★ 4 cited

Reference Capabilities for Safe Parallel Array Programming

Beatrice à kerblom, Elias Castegren, Tobias Wrigstad

The array is a fundamental data structure that provides an efficient way to store and retrieve non-sparse data contiguous in memory. Arrays are important for the performance of man…

cs.PL2019★ 3 cited

Safely Abstracting Memory Layouts

Juliana Franco, Alexandros Tasos, Sophia Drossopoulou +2

Modern architectures require applications to make effective use of caches to achieve high performance and hide memory latency. This in turn requires careful consideration of placem…

cs.PL2018★ 4 cited

Bestow and Atomic: Concurrent Programming using Isolation, Delegation and Grouping

Elias Castegren, Joel Wallin, Tobias Wrigstad

Any non-trivial concurrent system warrants synchronisation, regardless of the concurrency model. Actor-based concurrency serialises all computations in an actor through asynchronou…

cs.PL2017★ 1 cited

Actors without Borders: Amnesty for Imprisoned State

Elias Castegren, Tobias Wrigstad

In concurrent systems, some form of synchronisation is typically needed to achieve data-race freedom, which is important for correctness and safety. In actor-based systems, message…

cs.PL2017

Spencer: Interactive Heap Analysis for the Masses

Stephan Brandauer, Tobias Wrigstad

Programming language-design and run-time-implementation require detailed knowledge about the programs that users want to implement. Acquiring this knowledge is hard, and there is l…