Interoperabilità linguistica
In [[informatica]], il concetto di '''interoperabilità linguistica''' indica la capacità di due diversi [[Linguaggio di programmazione|linguaggi di programmazione]] di interagire in modo [[Nativo digitale|nativo]] e operare sullo stesso tipo di strutture di dati.

Alcuni [[Linguaggio di programmazione|linguaggi]] orientati agli oggetti possono farlo grazie alla [[macchina virtuale di hosting]] (ad esempio, [[linguaggi conformi]] a .[[Netflix|NET CLI]] in [[Common Language Runtime]] e linguaggi compatibili con JVM nella [[Java virtual machine]]).<ref>{{Cita web|url=https://www.nato.int/docu/review/2005/issue2/italian/art4.html|titolo=|accesso=18 aprile 2018|dataarchivio=10 maggio 2009|urlarchivio=https://web.archive.org/web/20090510065224/http://www.nato.int/docu/review/2005/issue2/italian/art4.html|urlmorto=sì}}</ref>

In questo caso, un linguaggio che viene eseguito in una [[VMware Inc.|VM]] può utilizzare un oggetto creato in una lingua diversa nella stessa [[VMware Inc.|VM]].  La [[VMware Inc.|VM]] gestisce l'[[Astrazione (informatica)|astrazione]] richiesta della rappresentazione dell'oggetto che consente di chiamare un metodo di una classe definita nella seconda lingua.

In questo si possono riutilizzare le librerie scritte in un'altra lingua della stessa VM: ad esempio un programma scritto in [[Apache Groovy]], [[Scala (linguaggio di programmazione)|Scala]] o [[Clojure]] può usare qualsiasi libreria scritta in [[Java (linguaggio di programmazione)|Java]] .  Lo stesso vale per [[Elixir (linguaggio di programmazione)|Elixir]], [[LFE (linguaggio di programmazione)|LFE]] ed [[Erlang (linguaggio di programmazione)|Erlang]], che sono tutti compilati in [[Erlang (linguaggio di programmazione)|ErlangVM]].

== Note ==
<references/>

== Voci correlate ==
* [[Chiamata di procedura remota]]
* [[Interfaccia di funzione straniera]]
* [[Specifica indipendente dalla lingua]]
* [[Associazione linguistica]]
* [[Linguaggio della colla]]
* [[Riutilizzo dell'API]]
* [[Lingue JVM]]
* [[Lingue della Cina|Lingue della CLI]]

[[Categoria:Concetti di programmazione]]