When a bug in a transformed application arises, it is often unclear if it is a bug in the original code, a bug in the transformation code, or a bug that arose from the interaction of the two. Debugging JOIE transformers today demands an understanding of the both the original code and the transformer. The problem is particular severe if multiple transformations were active. JOIE currently has no support for controlling interactions among transformers.
Some specific debugging support is essential to facilitate load-time transformation as a useful programming tool. At the very least, the environment must be able to determine if the failed code was transformed, if transformed code appears in the call chain, and which transformers were responsible for any transformed code. Basic information can be made available to the environment by tagging transformed classfiles in JOIE.