https://1library.net/document/y64mmvgq-definition-programming-language-interoperability-heterogeneous-software-systems-semantic.html