1. A method of cross-language inlining comprising: receiving source code of a multiple language program, the source code comprising a main language and a first access of a first foreign object in a first additional language; translating the main language to obtain a main language intermediate representation (IR); translating the first access of the first foreign object to obtain a first IR snippet; composing, before performing a compilation, the main language IR and the first IR snippet to obtain a cross-language IR, wherein composing the main language IR and the first IR snippet comprises: encountering, during execution of the main language IR, a foreign object access site for performing the first access of the first foreign object; and adding a first language check element to the first IR snippet at the foreign object access site, wherein the first language check element determines that the first access of the first foreign object is in the first additional language; and performing the compilation of the cross-language IR to obtain machine code corresponding to the multiple language program.