Sam Elliott

PhD Student at University of Washington

I'm a PhD student at the University of Washington, in the PLSE Research Group, advised by Ras Bodik, Mark Oskin, and Zach Tatlock.

I'm particularly interested in the applications of Programming Languages research, especially Type Systems and Program Synthesis, and how these can be used to help programmers produce correct systems.

Recently I have also been working on applying Program Synthesis techniques to Circuit Design, with some promising initial results.

I recently completed my BSc (Hons) in Computer Science at the University of St Andrews, in Scotland.

Contact Me

My office is CSE 602.

For anything academic or departmental, email me at

For anything else, email me at

My Research Publications →

Research into various topics including Programming Languages and Concurrent or Distributed Systems

Erlang meets Idris Publication →

2014–2015: My Bachelor's Dissertation project was producing an Idris to Erlang compiler, and associated libraries for producing verified concurrent programs in Idris that would use Erlang VM features.

CRDTs: Composition and Garbage Collection Visit Project →

2014: I have just finished 15 months working at Basho, continuing to develop Data Types for Riak. My work on Data Types has been included in Riak 2.0, and there is pending work that should be in the next major release of Riak.

2014: My Colleagues and I co-authored an extended abstract about the new CRDT that supports composition, titled “Riak DT Map: a Composable, Convergent Replicated Dictionary” that we presented at PaPEC 2014 (a Workshop colocated with Eurosys 2014).

2013 (Autumn): For more details on the work I did on the Data Types team, see My talk at RICON West 2013 entitled “CRDTs: An Update (or just a PUT)”

2013 (Summer): I spent 3 months working at Basho on Data Type support for their datastore, Riak. This included designing a new CRDT that supported composition, and adding Garbage Collection to their existing CRDT implementations.

skel — A Streaming Process-based Skeleton Library for Erlang Visit Project →

2012: I spent over two months working with the University of St Andrews and other institutions from the ParaPhrase project on this parallel skeleton library.

I helped co-author a paper titled “Cost-Directed Refactoring of Parallel Erlang Programs” which uses my Skeleton Library as the basis of its refactoring.


Other (non-research) Projects I've started or am involved in.

Quark & Byte Visit →

2014-2015: Henry Legg and I presented a Science and Technology news radio show, broadcasting on St Andrews STAR Radio. We broadcasted weekly, covering the science news of the last week, and a few interviews.