The goal of RMoD is to support remodularization and development of modular object-oriented applications. This objective is tackled from two complementary perspectives: reengineering and constructs for dynamic programming languages.
In the reengineering perspective we propose new analyses to understand and restructure existing large applications (specialized package metrics, adapted visualizations, layer identifications) on top of Moose (an open-source reengineering platform). We work on rule identification, validation. We created Synectique 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. 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.