“…Many others place adaptive behavior in middleware which, in addition to its traditional role in hiding resource distribution and platform heterogeneity, can be used to address concerns such as quality-of-service, energy management, fault tolerance, and security policy. Examples include Iguana/J [3], TAO [4], DynamicTAO [5], Open ORB [6], QuO [7], ORBacus [8], Squirrel [9], IRL [10], AspectIX [11], and ACT [12]. Finally, several projects focus on dynamic recomposition within the application itself, either directly by using a language that supports recomposition (e.g., CLOS or Python) or indirectly by modifying code as it is loaded by a virtual machine (as in Kava), or dynamically weaving new behavior into running programs (e.g., Iguana/J, TRAP/J, DADO, ABASCO, and Reflex.…”