The design of Guaranį was largely influenced by detected needs of a library like MOLDS. In fact, we have only started Guaranį because no other reflective platform we knew could provide the modularization, composition, reconfiguration and security features demanded by such a library. The choice of Java as the programming language has just made things easier, because of the existing basic reflection capabilities and of the libraries for developing networked applications.
We believe MOLDS will become a very powerful and sound framework for developing distributed applications, but its components still have to be detailed further and implemented.
This library is a basic part of a larger project [9]. The only similar project we have known to date is Apertos [39,40], a reflective operating system. We should note, however, that it is based on a slightly more limited reflective model, specifically targeted at operating system development.