16. The non-transitory computer readable medium of claim 15 , wherein composing the main language IR and the first IR snippet further comprises: mapping the first access of the first foreign object to a first message; inserting into the main language IR, at the foreign object access site, a first message element corresponding to the first message to obtain a first intermediate IR; sending the first message to a first receiver corresponding to the first foreign object; receiving, from the first receiver in response to sending the first message, the first IR snippet; and inserting the first IR snippet into the first intermediate IR to obtain the cross-language IR, wherein the first language check element is executed before the first IR snippet.
16. The non-transitory computer readable medium of claim 15 , wherein composing the main language IR and the first IR snippet further comprises: mapping the first access of the first foreign object to a first message; inserting into the main language IR, at the foreign object access site, a first message element corresponding to the first message to obtain a first intermediate IR; sending the first message to a first receiver corresponding to the first foreign object; receiving, from the first receiver in response to sending the first message, the first IR snippet; and inserting the first IR snippet into the first intermediate IR to obtain the cross-language IR, wherein the first language check element is executed before the first IR snippet. 18. The non-transitory computer readable medium of claim 16 , wherein the foreign object access site is language polymorphic, the method further comprising: executing, before the compilation, at least a portion of the multiple language program; determining, while executing the portion of the multiple language program, that the first access of the first foreign object at the foreign object access site has changed to a second access of a second foreign object via a second additional language; mapping the second access of the second foreign object to a second message; inserting a second message element corresponding to the second message into the first intermediate IR at the foreign object access site as part of a chain to obtain a second intermediate IR; sending the second message to a second receiver corresponding to the second foreign object; receiving, from the second receiver in response to sending the second message, a second IR snippet; adding a second language check element to the second IR snippet to be executed before the second IR snippet; inserting the second IR snippet into the second intermediate IR to obtain the cross-language IR, wherein the second language check element to be executed before the second IR snippet is inserted into the chain at the foreign object access site.