Area of investment and support

Area of investment and support: Programming languages and compilers

This research area explores the design of programming languages, development of the relevant mathematical theories, the processing of these and the generation of code.

Partners involved:
Engineering and Physical Sciences Research Council (EPSRC)

The scope and what we're doing

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
  • graphics
  • simulation
  • 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.

Maintaining capability

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.

Providing training

Training provision that maintains the size of the research area, which currently has relatively little such provision. We will continue to monitor this.

Why we're doing it

The UK has strength in semantics and logic research and its expertise is internationally recognised, with a continuing presence at international conferences such as the:

  • Association for Computing Machinery
  • Symposium on Principles of Programming Languages
  • European Symposium on Programming.

UK researchers feature prominently in European projects, such as the:

  • European Network on High Performance and Embedded Architecture and Compilation
  • European Research Network on Types for Programming and Verification
  • Behavioural Types for Reliable Large-Scale Software Systems.

The UK also plays a key role in the design and ongoing development of many widely used languages, for example C, C++, Java and Haskell.

Support for new languages

Research in this area plays an important role in the ongoing support and development of existing languages. However, novel research is not balanced by the complementary levels of developmental and incremental research necessary to ensure the long-term impacts of innovations are cemented.

For work in this area to have impact, there is a need to support new programming languages during implementation, which depends on groups being able to deliver this over the longer term. Without long term support, users (especially businesses) cannot afford to risk adopting the language.

Beyond proof-of-concept work was not prominent during the Research Excellence Framework (REF) 2014 exercise or within the EPSRC portfolio. The Programming Languages and Compilers working group convened by EPSRC however, reviewed the landscape in 2014 to 2015 and considered that this work is being done in the community.

Improving cybersecurity

According to consultation with the UK cybersecurity research community, this research area is viewed as having great potential to improve cybersecurity. An increasing number of proposals acknowledge its cybersecurity aspects. To respond to such challenges, it is important to maintain a strong level of UK expertise and capability in programming languages and compilers.

Training

While still a comparatively small research area, efforts to grow this research area have been successful, as a result of aspirations at EPSRC. There is currently limited PhD training in this area in the UK.

It will be important to continue to monitor the balance of training to maintain the long term sustainability of the community given the high uptake of students into industry and a growing need for development work on existing languages.

View evidence sources used to inform our research strategies

Past projects, outcomes and impact

Visualising our portfolio (VoP) is a tool for users to visually interact with the EPSRC portfolio and data relationships. Find out more about research area connections and funding for programming languages and compilers.

Find previously funded projects on Grants on the Web

Last updated: 4 January 2023

This is the website for UKRI: our seven research councils, Research England and Innovate UK. Let us know if you have feedback or would like to help improve our online products and services.