I am a teaching fellow in the Department of Computing at Imperial College London, primarily responsible for the MSc in Computing Science. Before this, I was a PhD student at Imperial College, supervised by Steffen van Bakel.

Teaching

I teach the MSc Computing course on Object Oriented Design and Programming jointly with Will Knottenbelt. Code for the examples in my part of the lecture course can be found here.

Research

I do research in the Theory of Computational Systems group. My broad research area is type systems and semantics of programming languages. More specifically, I am developing an intersection type system for a model of class-based object oriented programming with a view to using this as a basis for type-based program verification.
The following paper has been submitted to TCS:
Semantic Types and Approximation for Featherweight Java
R. N. S. Rowe, S. J. van Bakel
Some work-in-progress was presented at ICCSW 2011, although this is superceded by the material in my PhD thesis:
Safe, Flexible Recursive Types for Featherweight Java
Reuben N. S. Rowe
I presented the following paper at TLCA 2011:
Approximation Semantics and Expressive Type Assignment for Object-Oriented Programming
R. N. S. Rowe, S. J. van Bakel
The following paper appears in the proceedings of the FTfJP09 workshop:
Semantic Predicate Types and Approximation for Class-based Object Oriented Programming
Steffen van Bakel, Reuben N. S. Rowe
I am also interested in trying to specify and compile programs using context sensitive grammar formalisms. One such formalism that I am particularly interested in is Recursive Adaptive Grammars, or RAGs. I have written a RAG-based (scannerless) parser in Java. A summary of what RAGs are all about, and how I think they can be used to describe both the syntax and compilation process of programming languages can be found here.

Previous Education & Employment

I completed my PhD in 2013 - my thesis is entitled Semantic Types for Class-based Objects.
In 2008, I completed an MSc. in Advanced Computing at Imperial College London. I obtained a distinction and my dissertation, entitled Intersection Types for Class-based Object Oriented Programming, was selected as a distinguished project. The work that I carried out for this project constitutes the starting point of my PhD research.
From July 2005 to September 2007, I worked with a wonderful bunch of people at Hyperspheric Solutions Ltd in Cambridge, as a web applications developer using .NET. I was able to work on some really interesting projects, including "What Was Here".
From September 2004 to June 2005, I worked at Clipstream, now TMR Digital in London, developing web applications in ColdFusion. One interesting site that I built was for the Meridian Trust, a charity that produces media about Buddhist culture.
From 2001 to 2004 I studied the Computer Science Tripos in the computer lab at the University of Cambridge, graduating with a BA (hons) degree. I was a member of Fitzwilliam college.

Contact

Department of Computing
Imperial College London
180 Queens Gate
London
SW7 2AZ
email: rnr07 [at] doc.ic.ac.uk