Tobias Wrigstad
Professor i datalogi vid Institutionen för informationsteknologi; Datalogi
- Telefon:
- 018-471 10 72
- Mobiltelefon:
- 073-697 14 19
- E-post:
- tobias.wrigstad@it.uu.se
- Besöksadress:
- Hus 10, Lägerhyddsvägen 1
- Postadress:
- Box 337
751 05 UPPSALA
Ladda ned kontaktuppgifter för Tobias Wrigstad vid Institutionen för informationsteknologi; Datalogi
- Akademiska meriter:
- Docent , Excellent lärare
- ORCID:
- 0000-0002-4269-5408
Mer information visas för dig som medarbetare om du loggar in.
Kort presentation
Se wrigstad.com för en mer dynamisk bild av vad som händer i min verklighet.
Nyckelord
- concurrent programs
- memory management
- parallel programming
- programming languages
- software engineering
- type systems
Forskning
My research started in type systems for ownership and encapsulation, then moved away from types to dynamic programming languages (aka scripting languages), then combined these with types in gradual typing. I started working on actor languages, and then application of several of the results from my earlier type systems and ownership work to concurrency and parallelism in the form of capabilities, which were simpler yet more versatile. The quest for performance led me to garbage collection, memory management, and arrays.
My current research focuses on managed programming languages and their safe and efficient execution, through improved memory management techniques. There are several synergies with past work on capabilities as well as gradual typing which I mean to explore in the near future.
In addition to this, I have been studying scientific computing software from a software engineering perspective, which has led to large-scale analysis of code repositories of data science programs written predominantly in untyped languages, to find errors and support the development of correct, reusable, reproducable scientific computing.
Publikationer
Senaste publikationer
- Scheduling Garbage Collection for Energy Efficiency on Asymmetric Multicore Processors (2024)
- Reference Capabilities for Flexible Memory Management (2023)
- Encore (2023)
- When Concurrency Matters (2023)
- Heap Size Adjustment with CPU Control (2023)
Alla publikationer
Artiklar
- Scheduling Garbage Collection for Energy Efficiency on Asymmetric Multicore Processors (2024)
- Reference Capabilities for Flexible Memory Management (2023)
- When Concurrency Matters (2023)
- Deep Dive into ZGC: A Modern Garbage Collector in OpenJDK (2022)
- Jupyter Notebooks on GitHub (2021)
- Reshape your layouts, not your programs (2020)
- Graph-theoretic approaches and tools for quantitatively assessing curricula coherence (2020)
- Quantitative analysis of curricula coherence using directed graphs (2019)
- Bestow and Atomic (2018)
- OOlong (2018)
- Types for CAS (2017)
- Orca (2017)
- Type-assisted automatic garbage collection for lock-free data structures (2017)
- Minimal Ownership for Active Objects (2008)
- Dala
- To Err or Not to Err?
- Monk
- Monk
Böcker
Kapitel
- Encore (2023)
- Vats (2016)
- Beyond the Geneva Convention on the Treatment of Object Aliasing (2013)
- Ownership Types (2013)
- Structured Aliasing (2013)
Konferenser
- Heap Size Adjustment with CPU Control (2023)
- Compressed Forwarding Tables Reconsidered (2022)
- Analysing and Predicting Energy Consumption of Garbage Collectors in OpenJDK (2022)
- Dala: a simple capability-based dynamic language design for data race-freedom (2021)
- ThinGC (2020)
- Improving Program Locality in the GC using Hotness (2020)
- Run, Actor, Run (2019)
- Godot (2019)
- Courses-Concepts-Graphs as a Tool to Measure the Importance of Concepts in University Programmes (2019)
- Performance of an OO compute kernel on the JVM (2019)
- Progress Report (2019)
- C♭: A New Modular Approach to Implementing Efficient and Tunable Collections (2018)
- Attached and Detached Closures in Actors (2018)
- OOlong (2018)
- Correctness of a concurrent object collector for actor languages (2018)
- Safely Abstracting Memory Layouts (2018)
- Extending SHAPES for SIMD Architectures – (2018)
- Parallel Programming With Arrays in Kappa (2018)
- Spencer (2017)
- Mining for Safety using Interactive Trace Analysis (2017)
- Actors without Borders (2017)
- Relaxed Linear References for Lock-free Data Structures (2017)
- Reference Capabilities for Concurrency & Scalability (2017)
- You can have it all (2017)
- Mastery Learning-Like Teaching with Achievements (2017)
- Kappa (2016)
- Reference Capabilities for Concurrency Control (2016)
- Types for CAS: Relaxed Linearity with Ownership Transfer (2016)
- Towards Enabling Low-Level Memory Optimisations at the High-Level with Ownership Annotations (2016)
- Parallel Objects for Multicores (2015)
- Disjointness Domains for Fine-Grained Aliasing (2015)
- Refined Ownership (2015)
- Measuring Polymorphism in Python Programs (2015)
- Structured Aliasing (2012)
- The Joelle Programming Language (2012)
- Multiple Aggregate Entry Points for Ownership Types (2012)
- Is the World Ready for Ownership Types? Is Ownership Types Ready for the World? (2011)
- Owners as Ombudsmen (2011)
- Regions as Owners (2011)
- Tribal ownership (2010)
- Welterweight Java (2010)
Rapporter
- Performance of an OO compute kernel on the JVM (2019)
- LOLCAT (2016)
- Reference Capabilities for Trait Based Reuse and Concurrency Control (2016)