People
  1. Academic experts
  2. Research students
  3. Students
  4. Alumni
  5. Senior people at City
  6. Non-academic staff
  7. Honorary graduates
People

Contact Information

Contact

Visit Ross Paterson

A309D, College Building

Postal Address

City, University of London
Northampton Square
London
EC1V 0HB
United Kingdom

About

Overview

Dr Paterson is a member of the Research Centre for Machine Learning. His research focuses on programming and programming languages, especially functional programming. His interests include functional programming techniques, embedded domain-specific languages based on various notions of computation, program transformations and persistent data structures.

Qualifications

  1. PhD in Computer Science, University of Queensland, Australia, 1989
  2. BSc (Hons) Computer Science, University of Queensland, Australia, 1980

Employment

  1. Lecturer, City, University of London, 1998 – present
  2. Lecturer, University of London, 1996 – 1998
  3. Research Assistant, Imperial College London, 1990 – 1995
  4. Lecturer, University of Queensland, 1988 – 1989

Research

My research focusses on programming and programming languages, especially functional programming. I'm interested in functional programming techniques, embedded domain-specific languages based on various notions of computation, program transformations and persistent data structures.

Publications

Chapter

  1. Paterson, R. (2003). Arrows and computation. In Gibbons, J. and Moor, O. (Eds.), The Fun of Programming (pp. 201–222). Palgrave. ISBN 978-1-4039-0772-1.

Conference papers and proceedings (13)

  1. Paterson, R. (2012). Constructing applicative functors. Mathematics of Program Construction 25-27 June, Madrid.
  2. Bernardy, J.P., Jansson, P. and Paterson, R. (2010). Parametricity and dependent types. International Conference on Functional Programming 27-29 September, Baltimore.
  3. Gibbons, J. and Paterson, R. (2009). Parametric datatype-genericity. Workshop on Generic Programming Edinburgh, UK.
  4. Paterson, R. (2001). A new notation for arrows. International Conference on Functional Programming Firenze, Italy.
  5. Paterson, R. (1997). Transforming lazy functions using comportment properties. Programming Language Implementation and Logics of Programs Southampton, UK.
  6. Paterson, R. (1996). Compiling laziness using projections. Static Analysis Symposium Aachen, Germany.
  7. Launchbury, J. and Paterson, R. (1996). Parametricity and unboxing with unpointed types. European Symposium of Programming Linköping, Sweden.
  8. Bennett, A.J., Kelly, P.H.J. and Paterson, R. (1994). Derivation and performance of a pipelined transaction processor. Dallas, Texas.
  9. Cheng, A.S.K. and Paterson, R.A. (1992). An Implementation for a Higher Level Logic Programming Language.
  10. Meijer, E., Fokkinga, M.M. and Paterson, R. (1991). Functional programming with bananas, lenses, envelopes and barbed wire. 5th ACM Conference on Functional Programming Languages and Computer Architecture La Jolla, CA, USA.
  11. Drossopoulou, S., Paterson, R. and Eisenbach, S. (1991). Parameterized Interfaces are Interfaces - AIAS.
  12. Paterson, R. (1991). A Tiny Functional Language with Logical Features.
  13. Staples, J., Robinson, P.J., Paterson, R.A., Hagen, R.A., Craddock, A.J. and Wallis, P.C. (1989). Qu-Prolog: an extended Prolog for meta level programming. Meta-programming in logic programming 1988.

Journal articles (6)

  1. Bernardy, J.P., Jansson, P. and Paterson, R. (2012). Proofs for free - parametricity for dependent types. Journal of Functional Programming, 22(2), pp. 107–152. doi:10.1017/S0956796812000056.
  2. McBride, C. and Paterson, R. (2008). Applicative programming with effects. J. Funct. Prog., 18(1), pp. 1–13. doi:10.1017/S0956796807006326.
  3. Hinze, R. and Paterson, R. (2006). Finger trees: a simple general-purpose data structure. J. Funct. Prog., 16(2), pp. 197–217. doi:10.1017/S0956796805005769.
  4. Bennett, A.J., Kelly, P.H.J. and Paterson, R.A. (2001). Pipelined functional tree accesses and updates scheduling, synchronization, caching and coherence. J FUNCT PROGRAM, 11(4), pp. 359–393. doi:10.1017/S0956796801003793.
  5. Bird, R.S. and Paterson, R. (1999). De Bruijn notation as a nested datatype. Journal of Functional Programming, 9(1), pp. 79–91. doi:10.1017/S0956796899003366.
  6. Bird, R.S. and Paterson, R. (1999). Generalised folds for nested datatypes. Formal Aspects of Computing, 11(2), pp. 200–222.

Thesis/dissertation

  1. Paterson, R.A. Reasoning about Functional Programs. (PhD Thesis)