Software projects consist of different kinds of artifacts: build files, configuration files, markup files, source code in different software languages, and so on. At the same time, however, most integrated development environments (IDEs) are focused on a single (programming) language. Even if a programming environment supports multiple languages (e.g., Eclipse), IDE features such as cross-referencing, refactoring, or debugging, do not often cross language boundaries. What would it mean for programming environment to be truly multilingual? In this short paper we sketch a vision of a system that integrates IDE support across language boundaries. We propose to build this system on a foundation of unified source code models and metaprogramming. Nevertheless, a number of important and hard research questions still need to be addressed.
Science of Computer Programming
Software Analysis and Transformation

van der Storm, T., & Vinju, J. (2015). Towards Multilingual Programming Environments. Science of Computer Programming, 97(Part 1), 143–149. doi:10.1016/j.scico.2013.11.041