RMoD

Logo The goal of RMoD is to support remodularization of object-oriented applications. This objective is tackled from two complementary perspectives: reengineering and modularity constructs for programming languages.

In the reengineering perspective we will propose new analyses to understand and restructure existing large applications (specialized package metrics, adapted visualizations, layer identifications) on top of Moose.

In the modularity construct context we will work on a pure trait-based language and new modular abstractions. We will also propose the definition of dedicated secure language constructs based on a modular and layered kernel as one direct application of modularization. These programming language constructs will be experimented on Pharo, a new open-source Smalltalk-inspired language supporting dynamic web development. Pharo will be used as a testbed for a pure-traits language, which will be used to assess the impact of modular classes in terms of reuse orthogonally to inheritance.

Keywords:
dynamic languages, language design, reflective programming, security, Smalltalk, Pharo, reengineering, software analysis, program visualization, reverse engineering, meta modeling, moose.

More information about our work cam be found in our activity reports: 2012, 2011, 2010, 2009.