Efficient Programming Language Development and Evolution through Modularity

Project Goal

The development of new programming languages is an effective tool for improving software development productivity. However, this development process is also very complex and expensive. The goal of this project is to reduce the costs of this development process by providing a framework based on highly structured syntax-directed transformation techniques that make it possible to structure both the design and the implementation of programming languages into reusable modules. With the help of this framework, a programming language is constructed by composing such modules, and incremental changes to existing languages are achieved by adding new modules or changing existing modules. This modular approach is expected to make programming language development simpler, more efficient and less error-prone. Moreover, the modular design and implementation of languages also reduces the cost and risk of incremental changes to a language, which typically pose serious problems in practice. This project seeks, in collaboration with several international partners, a systematic approach that provides solutions that are applicable in software development practice.

Acknowledgement

This project is funded by The Danish Council for Independent Research | Technology and Production Sciences.