Re:Too Many Programming Languages
by nostrademons on Thursday June 11, 2015 @03:45PM
(#9701864)
This doesn't work because there are a number of semantic distinctions layered even on top of Lisp-like syntax tree, and all those languages have different semantics. Common Lisp, Scheme, Clojure, and Arc are all Lisps, but you can't use code written in one of them inside a different one.
The way you get language interoperability is to define a common data format and a common way of indicating which code will execute next. A number of standards do this - platform ABIs, C calling conventions, LLVM/JVM/.NET bitcode, RPC frameworks like gRPC/Thrift/CapnProto/MessagePack/JSON-RPC/Avro - but they're all lower level than you would normally want to program in.
The way you get language interoperability is to define a common data format and a common way of indicating which code will execute next. A number of standards do this - platform ABIs, C calling conventions, LLVM/JVM/.NET bitcode, RPC frameworks like gRPC/Thrift/CapnProto/MessagePack/JSON-RPC/Avro - but they're all lower level than you would normally want to program in.