15 citations · 27 across the 8 of their papers we have counts for
9 papers
Nothing Is Shared Until You Synchronise: Reinterpreting Java for Data-Race Freedom
Luke Cheeseman, Elias Castegren, David Black-Schaffer +2
In mainstream shared-memory languages, programmers use synchronisation mechanisms such as locks to isolate shared data accesses across threads to avoid data races. Yet synchronisat…
Repr Types: One Abstraction to Rule Them All
Viktor Palmkvist, Anders Ågren Thuné, Elias Castegren +1
The choice of how to represent an abstract type can have a major impact on the performance of a program, yet mainstream compilers cannot perform optimizations at such a high level.…
Arrays in Practice: An Empirical Study of Array Access Patterns on the JVM
Beatrice Åkerblom, Elias Castegren
The array is a data structure used in a wide range of programs. Its compact storage and constant time random access makes it highly efficient, but arbitrary indexing complicates th…
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…
Resolvable Ambiguity
Viktor Palmkvist, Elias Castegren, Philipp Haller +1
A common standpoint when designing the syntax of programming languages is that the grammar definition has to be unambiguous. However, requiring up front unambiguous grammars can fo…
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…
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…
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…
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…