Computer Science @ University of St Andrews

University of St Andrews crest

Prof Kevin Hammond

Prof Kevin Hammond

Position: Professor

Research profile

Email (@st-andrews.ac.uk): kh8

Office: JC0.07 - Jack Cole Building, North Haugh

Phone: +44 (0)1334 46 3241

Home page: https://kh.host.cs.st-andrews.ac.uk

Research Overview

My general research interests lie in the design and implementation of computer programming languages, including implementation of real-time and embedded systems. I have over 20 years of experience in this area, am an expert programmer with considerable experience programming Unix and other systems, and have been involved in numerous successful research projects of national and international importance.


Within this general research area, I am pursuing two distinct research strands: i) Bounded time/space modeling. My work on parallel computing has led to the development of novel time and space cost modelling techniques, which I have incorporated into a new programming notation, Hume. The work is potentially significant to a number of commercially important areas of Computer Science, including embedded/real-time systems and Systems-on-Chip.


ii) Parallelism and the GRID. Harnessing the power of multiple processors offers the prospect of significant performance improvement. Such power is essential to both scientific and commercial applications, including those targeted by the recent E-Science initiative. The challenge is to design new computer languages and abstractions that can allow such systems to be exploited effectively at low programmer cost. This is the research that my team has been pursuing over the last few years.

Recent Publications

Lapedo: hybrid skeletons for programming heterogeneous multicore machines in Erlang

Janjic, V, Brown, CM & Hammond, K 2016, 'Lapedo: hybrid skeletons for programming heterogeneous multicore machines in Erlang'. in GR Joubert, H Leather, M Parsons, F Peters & M Sawyer (eds), Parallel Computing: On the Road to Exascale. Advances in Parallel Computing, vol. 27, IOS Press, pp. 185-195, International Conference on Parallel Computing (ParCo) 2015, Edinburgh, United Kingdom, 1-4 September., 10.3233/978-1-61499-621-7-185

Kindergarten Cop: dynamic nursery resizing for GHC

Ferreiro, H, Castro, L, Janjic, V & Hammond, K 2016, 'Kindergarten Cop: dynamic nursery resizing for GHC'. in CC 2016 Proceedings of the 25th International Conference on Compiler Construction . ACM Press - Association for Computing Machinery, New York, pp. 56-66, 25th International Conference on Compiler Construction, Barcelona, Spain, 17-18 March., 10.1145/2892208.2892223

HPC-GAP: engineering a 21st-century High-Performance Computer algebra system

PAEAN: Portable Runtime Support for Physically-Shared-Nothing Architectures in Parallel Haskell Dialects

Towards ‘Metaheuristics in the Large’

Swann, J & Hammond, K 2015, 'Towards ‘Metaheuristics in the Large’' Paper presented at MIC 2015: 11th Metaheuristics International Conference, Morocco, 7/06/15 - 10/06/15, .

Type-based allocation analysis for co-recursion in lazy functional languages

Vasconcelos, PB, Jost, S, Florido, M & Hammond, K 2015, 'Type-based allocation analysis for co-recursion in lazy functional languages'. in J Vitek (ed.), Programming Languages and Systems: 24th European Symposium on Programming, ESOP 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, UK, April 11-18, 2015, Proceedings. vol. 9032, Lecture Notes in Computer Science, Springer-Verlag, pp. 787-811, 24th European Symposium on Programming, ESOP 2015, London, United Kingdom, 14-16 April., 10.1007/978-3-662-46669-8_32

Discovering parallel pattern candidates in Erlang

Bozo, I, Fordos, V, Horvath, Z, Toth, M, Horpacsi, D, Kozsik, T, Koszegi, J, Barwell, AD, Brown, CM & Hammond, K 2014, 'Discovering parallel pattern candidates in Erlang'. in Erlang '14 Proceedings of the Thirteenth ACM SIGPLAN workshop on Erlang. ACM, New York, NY, pp. 13-23., 10.1145/2633448.2633453

Space exploration using parallel orbits: a study in parallel symbolic computing

Janjic, V, Brown, CM, Neunhoeffer, M, Hammond, K, Linton, SA & Loidl, H-W 2013, 'Space exploration using parallel orbits: a study in parallel symbolic computing'. in M Bader, A Bode, H-J Bungartz, M Gerndt, GR Joubert & F Peters (eds), Parallel Computing: Accelerating Computational Science and Engineering (CSE). vol. 25, Advances in Parallel Computing, IOS Press, pp. 225-232., 10.3233/978-1-61499-381-0-225

Mapping parallel programs to heterogeneous CPU/GPU architectures using a Monte Carlo Tree Search

Goli, M, McCall, J, Brown, CM, Janjic, V & Hammond, K 2013, 'Mapping parallel programs to heterogeneous CPU/GPU architectures using a Monte Carlo Tree Search'. in 2013 IEEE Congress on Evolutionary Computation, CEC 2013. IEEE, pp. 2932-2939., 10.1109/CEC.2013.6557926

Cost-directed refactoring for parallel Erlang programs

Brown, CM, Danelutto, M, Hammond, K, Kilpatrick, P & Elliot, A 2013, 'Cost-directed refactoring for parallel Erlang programs'. in Proc. International Symposium on High-level Parallel Programming and Applications. Lecture Notes in Computer Science, Springer., 10.1007/s10766-013-0266-5