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.
Programming environments, Language interoperability, Metaprogramming
Programming Environments (acm D.2.6), Processors (acm D.3.4)
Software (theme 1)
Science of Computer Programming
Software Analysis and Transformation

van der Storm, T, & Vinju, J.J. (2013). Towards multilingual programming environments. Science of Computer Programming, 1–7.