Language interoperability requires a software layer called a Metaobject Protocol (or MOP) which mediates the basic tasks of naming and using APIs across the JVM's libraries and application components. For Java alone, the linkage rules baked into the JVM specification are sufficient, but a thicker, more flexible software layer is needed to manage programmable, language specific linkage rules.
The major initiative in this direction is the Dynalang Project. The cluster of pages on this wiki are supplementary notes, relating Da Vinci Machine projects to the problem of designing a MOP.