Our MDSOC kernel is a common substrate for the implementation of programming languages supporting multi-dimensional separation of concerns (MDSOC). The basic principles underlying the kernel are very simple: the mechanisms at work in MDSOC languages are mapped to prototype-based object orientation and delegation. The model realizing these principles has been documented in a paper that was published at ECOOP 2007 (pdf). It was developed in collaboration with the University of Antwerp.

An implementation of the kernel has been realized using the COLA framework from Viewpoints Research Institute (also see our COLA tutorial). COLA is an ideal tool for the realization of projects such as the AOP kernel as it provides many of the basic mechanisms, such as prototypes and delegation, and an open architecture that allows for adapting virtually all aspects of the framework. A paper published at ACM SAC PSC 2008 describes the kernel (pdf).

The implementation of the MDSOC kernel is available (tar.bz2, containing the entire COLA distribution). It compiles out of the box on Mac OS X and Linux systems. The distribution also includes implementations of four MDSOC languages and sample programs for demonstration and experimentation.