The goal of RMoD is to support ever running systems. This objective is tackled from two complementary perspectives: reengineering of large systems and constructs for dynamic reflective programming languages.
In the reengineering perspective we propose new analyses to understand and restructure existing large applications (specialized package metrics, adapted visualizations, layer identifications, automated migration) on top of Moose (an open-source reengineering platform) http://www.moosetechnology.org. We work on rule identification, validation. We created Synectique http://synectique.eu a company deploying tools that support software analyses.
In the construct context we are revisiting language concepts such as modules and composition. In addition we are working on new generation of reflective systems. These programming language constructs are experimented on Pharo http://www.pharo.org. We are developing Pharo a dynamically-typed and reflective pure object-oriented language. Pharo is used in several universities worldwide, by research groups and companies. http://consortium.pharo.org is an industrial consortium that supports Pharo.
More information about our work can be found in our activity reports: Activity reports.