VLDB 2026 Research / reviewers in the wild / expert
Alex Dixon
dblp:263/1238
· DBLP profile ↗
4ranked-venue papers
3as first author
3since 2021 · last 2026
0000-0003-3048-5128ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 2 · 2 first-author · 1 since 2021Theory of computation · 2 · 2 first-author · 2 since 2021Human-computer interaction and ubiquitous computing · 1 · 1 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Tikka: An Interpreter and Debugger for a Pedagogical Subset of HaskellabstractFunctional programming is a core part of many undergraduate-level courses in Computer Science. Pedagogical interest in Haskell continues to grow as functional idioms become commonplace in popular multi-paradigm languages. The Glasgow Haskell Compiler (GHC) is by far Haskell’s most used compiler, but can hinder students’ initial learning because of its detailed and verbose error messages which are designed to support experienced users and cover a broad language surface. In this paper we introduce Tikka, an interpreter for a carefully-selected subset of Haskell with concise, beginner-friendly error messages, evaluation tracing, and a bespoke IDE. This paper discusses the design of an interpreter targeted towards novice users, and presents an evaluation of its use in practice through user testing and a side-by-side comparison of GHC and Tikka. Alex Hobbs, Alex Dixon |
ITiCSE (2) | 2 |
| 2021 | Leafy automata for higher-order concurrencyabstractAbstract Finitary Idealized Concurrent Algol ( $$\mathsf {FICA}$$ FICA ) is a prototypical programming language combining functional, imperative, and concurrent computation. There exists a fully abstract game model of $$\mathsf {FICA}$$ FICA , which in principle can be used to prove equivalence and safety of $$\mathsf {FICA}$$ FICA programs. Unfortunately, the problems are undecidable for the whole language, and only very rudimentary decidable sub-languages are known. We propose leafy automata as a dedicated automata-theoretic formalism for representing the game semantics of $$\mathsf {FICA}$$ FICA . The automata use an infinite alphabet with a tree structure. We show that the game semantics of any $$\mathsf {FICA}$$ FICA term can be represented by traces of a leafy automaton. Conversely, the traces of any leafy automaton can be represented by a $$\mathsf {FICA}$$ FICA term. Because of the close match with $$\mathsf {FICA}$$ FICA , we view leafy automata as a promising starting point for finding decidable subclasses of the language and, more generally, to provide a new perspective on models of higher-order concurrent computation. Moreover, we identify a fragment of $$\mathsf {FICA}$$ FICA that is amenable to verification by translation into a particular class of leafy automata. Using a locality property of the latter class, where communication between levels is restricted and every other level is bounded, we show that their emptiness problem is decidable by reduction to Petri net reachability. Alex Dixon, Ranko Lazic 0001, Andrzej S. Murawski, Igor Walukiewicz |
FoSSaCS | 1 |
| 2021 | Verifying higher-order concurrency with data automataabstractUsing a combination of automata-theoretic and game-semantic techniques, we propose a method for analysing higher-order concurrent programs. Our language of choice is Finitary Idealised Concurrent Algol (FICA) due to its relatively simple fully abstract game model.Our first contribution is an automata model over a tree-structured infinite data alphabet, called split automata, whose distinctive feature is the separation of control and memory. We show that every FICA term can be translated into such an automaton. Thanks to the structure of split automata, we are able to observe subtle aspects of the underlying game semantics.This enables us to identify a fragment of FICA with iteration and limited synchronisation (but without recursion), for which, in contrast to the whole FICA, a variety of verification problems turn out to be decidable. Alex Dixon, Ranko Lazic 0001, Andrzej S. Murawski, Igor Walukiewicz |
LICS | 1 |
| 2020 | KReach: A Tool for Reachability in Petri NetsabstractWe present KReach , a tool for deciding reachability in general Petri nets. The tool is a full implementation of Kosaraju’s original 1982 decision procedure for reachability in VASS. We believe this to be the first implementation of its kind. We include a comprehensive suite of libraries for development with Vector Addition Systems (with States) in the Haskell programming language. KReach serves as a practical tool, and acts as an effective teaching aid for the theory behind the algorithm. Preliminary tests suggest that there are some classes of Petri nets for which we can quickly show unreachability. In particular, using KReach for coverability problems, by reduction to reachability, is competitive even against state-of-the-art coverability checkers. Alex Dixon, Ranko Lazic 0001 |
TACAS (1) | 1 |