
The Challenge of Cross-language Interoperability (2013) - entha_saava
https://queue.acm.org/detail.cfm?id=2543971
======
sjrd
Incidentally, I started my PhD around the time this article was written. My
thesis, which discusses the design and implementation of Scala.js, ended up
being titled "Cross-Platform Language Design" [1], as it focuses on the
language interoperability issue, combined with concerns for portability and
performance.

[1]
[https://infoscience.epfl.ch/record/256862?ln=fr](https://infoscience.epfl.ch/record/256862?ln=fr)

~~~
dwohnitmok
Thanks for all you've done for Scala.js.

------
zmmmmm
The section titled "The VM Delusion" seems a little superficial. It focuses on
interoperability with C++ which is hard for nearly every language and then
says that because it's annoying in Java the VM concept doesn't work.

I think VMs had a pretty successful run (esp. in the time frame of this
article) - and the only thing that has attenuated it is the rise of containers
and standardisation of Linux as a default server platform which finally made
"cross platform" a reality for non-VM languages.

The real residual problems with interoperability b/w different languages now
lie in things like internal data structures being mapped onto different memory
layouts which creates very high cost to passing large data sets between them.
Hence projects like Apache Arrow [1] which try to solve this.

[1] [https://arrow.apache.org/](https://arrow.apache.org/)

