I am a final-year PhD student in the Multicore Programming group at Imperial College London. Next autumn, I will join the Programming Principles and Tools group at Microsoft Research Cambridge as a Research Software Development Engineer.
My research interests include programming language design and static/dynamic program analysis, especially applied in the context of complex asynchronous reactive software systems. For my PhD thesis, I created P#, a new asynchronous programming language co-designed with static data race detection and systematic testing techniques, which is now used inside Microsoft. I also developed Whoop, a static analyzer that can efficiently detect data races in Linux device drivers.
I was honored to be selected as one of the 15 finalists in the UK ICT Pioneers 2015 competition by EPSRC for my work on P#!
My PhD research in three minutes.
Learn how my PhD work can help developers write correct asynchronous programs:
I am a key contributor / lead developer in the following projects:
- [git] P#, a language that simplifies developing, analysing and testing asynchronous programs, such as web services and distributed systems.
- [git] Whoop, a tool that (i) automatically analyses Linux device drivers for data races and (ii) exploits the race-related information to accelerate Microsoft's Corral, an industrial strength bug-finder for concurrent programs.
- [git] lockpwn, a static lockset analyser for pthread C programs. This tool largely reuses the static lockset analysis and race checking APIs of Whoop, but applies the technique on pthreads instead of device drivers.
- Dungeon Story, a Puzzle/RPG game that I developed (as a hobby project) during summer 2012. The game is available worldwide in the iOS App Store, it has been downloaded by more than 110,000 users, and has hundreds of 4.5/5 star ratings.
I have also contributed to the following projects:
- [git] SMACK, a bounded software verifier for C programs.
- [git] GPUVerify, a tool for formal analysis of GPU kernels written in OpenCL and CUDA.
- [git] Boogie, an intermediate verification language.
- [pdf] Uncovering Bugs in Distributed Storage Systems During Testing (not in Production!), Pantazis Deligiannis, Matt McCutchen, Paul Thomson, Shuo Chen, Alastair F. Donaldson, John Erickson, Cheng Huang, Akash Lal, Rashmi Mudduluru, Shaz Qadeer and Wolfram Schulte. In the 14th USENIX Conference on File and Storage Technologies (FAST'16), pp. 249-262, 2016.
- [pdf] Fast and Precise Symbolic Analysis of Concurrency Bugs in Device Drivers, Pantazis Deligiannis, Alastair F. Donaldson and Zvonimir Rakamaric ́. In the 30th IEEE/ACM International Conference on Automated Software Engineering (ASE'15), pp. 166-177, 2015.
- [pdf] Asynchronous Programming, Analysis and Testing with State Machines, Pantazis Deligiannis, Alastair F. Donaldson, Jeroen Ketema, Akash Lal and Paul Thomson. In the 36th Annual ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'15), pp. 154-164, 2015.
- [pdf] Automatic Verification of Data Race Freedom in Device Drivers, Pantazis Deligiannis and Alastair F. Donaldson. In the 4th Imperial College Computing Student Workshop (ICCSW'14), pp. 36-39, 2014.
- [website] Engineering a Static Verification Tool for GPU Kernels, Ethel Bardsley, Adam Betts, Nathan Chong, Peter Collingbourne, Pantazis Deligiannis, Alastair F. Donaldson, Jeroen Ketema, Daniel Liew and Shaz Qadeer. In the 26th International Conference on Computer Aided Verification (CAV'14), pp. 226-242, 2014.
- Haskell vs. F# vs. Scala: A High-level Language Features and Parallelism Support Comparison, Prabhat Totoo, Pantazis Deligiannis and Hans-Wolfgang Loidl. In the 1st ACM SIGPLAN Workshop on Functional High-Performance Computing (FHPC'12), pp. 49-60, 2012.
- Improving the Diagnosis of Mild Hypertrophic Cardiomyopathy with MapReduce, Pantazis Deligiannis, Hans-Wolfgang Loidl and Evangelia Kouidi. In the 3rd International Workshop on MapReduce and its Applications (MAPREDUCE'12), pp. 41-48, 2012.
About P# at:
- USENIX FAST'16 (February 2016), Microsoft Research Cambridge (January 2016), Charles University in Prague (December 2015), Microsoft Research Cambridge (October 2015), Microsoft Research Redmond (August 2015), Microsoft Azure Storage (July 2015), PLDI'15 (June 2015), Microsoft Research Redmond (June 2015), Imperial College London (May 2015), University of Utah (March 2015).
About Whoop at:
- Microsoft Research Cambridge (January 2016), ASE'15 (November 2015), Intel Hillsboro (June 2015), ICCSW'14 (September 2014).
I am serving (or have served) on the committee of:
- POPL 2017 - Artifact Evaluation Committee.
- CGO 2016 and PPoPP 2016 - Joint Artifact Evaluation Committee.
I enjoyed visiting the following research labs:
- D3S, Charles University - hosted by Pavel Parízek (December 2015).
- SOAR Lab, School of Computing, University of Utah - hosted by Zvonimir Rakamarić (March 2015).
I love travelling. See where I have been.