CORBA's IDL was great; we're using a home grown variant for C++/C#/Java/JS interop, and it's much, much better than SWIG.
Maybe the problem with a lot of RPC tools is that they conflate serialization format and remote call semantics (or "complect" these two factors, if I were inclined to mimic the pretentiousness of Rich Hickey).
And will keep on coming back even after REST gets replaced something else.
Most want a simple network programming model that looks like regular code, even though distributed systems are anything but simple.