Most of the interface code in the above examples was hand coded to fit the example. However, language interoperability is an increasingly common concern and a number of tools are being currently developed that can make the above strategies automated and more standard.