This research area explores the design of programming languages, development of the relevant mathematical theories, the processing of these and the generation of code.
This area explores the design of programming languages, development of the relevant mathematical theories, the processing of these through compilers and interpreters and the generation of code. This area includes research which goes beyond early-stage proof-of-concept developments to include rigorous evaluations and validations, with the implementation work these require.
This UK research area is world leading and, while still small compared with others in information and communication technologies (ICT), is growing. It is now considered to include a greater portion of work which can be described as beyond proof of concept. However, the balance should continue to shift in the direction of this type of work and reflect the various application areas for new programming languages and important considerations.
We have five aims for our research.
Development of languages and tools to meet emerging needs
A portfolio of research in this area that includes development of specific languages and tools for a growing variety of architectures and applications to meet emerging needs. For example:
- artificial intelligence
- heterogeneous systems
- high-performance computing
- big data.
Rigorous evaluation and validation
An increased proportion of the area going beyond proof-of-concept and including rigorous evaluation and validation (implementation work). More emphasis should be placed on developmental and incremental work in order to maintain existing languages and code to secure long-term impact.
A research area in which the current strength of support for the UK’s capability to conduct research in safe and secure ICT is maintained. The UK retains a strong capability to develop code which is reliable and robust in the face of unpredictable events. Researchers should reflect on how they can address the challenges described in EPSRC’s Safe and Secure ICT priority.
Working across related research areas
Researchers working across hardware and software interfaces, strengthening the overlap of this research area with related ones:
This is an opportunity to contribute to the aim of EPSRC’s Cross-Disciplinarity and Co-Creation cross-ICT priority.
Training provision that maintains the size of the research area, which currently has relatively little such provision. We will continue to monitor this.