Multi-Language and Heterogeneously-licensed Software Analysis
Ferdaous Boughanmi · 2010
Today software systems are built with heterogeneous languages such as Java, C, C++, XML, Perl or Python just to name a few. This introduces new challenges both in the software analysis domain and program evolution as programmers are forced to cope with a variety of programming paradigms and languages. We believe that there is the need of views supporting developers to effectively cope with complexity and to facilitate program comprehension and analysis of such heterogeneous systems. Furthermore, the heterogeneity of the systems is not limited to the language but also impacts the components licensing. In fact, licensing is another type of heterogeneity introduced by the large reuse of open source code. This also introduces challenges such how to legally combine different licenses in the same system and how the change of the software can create a violation of licenses.