Often when translating between languages (whether with program translation or compiling) it's a one-way, destructive translation. The functionality of the "port" isn't lost, but some of the intent and expression is.
For instance, porting a program from Java to C is possible, but you lose the notion of classes and methods. If that program were to be ported back to Java you'd need to infer the intent of what would be considered an object to get back to the original state. And that's something that a computer isn't good at doing. As such you'd end up with a Java program that looked more like a C program with data structures and a big collection of static functions.
Also consider a compiler. Once a language has been compiled down to assembler or even to say CIL or JVM, concepts such as if statements are lost as they are turned into branches.
On a higher level, source to source translators exist, but some languages have features (i.e. delegates in C#) which don't exist in other languages (like Java not having delegates). The translation can happen, but is mildly destructive (i.e. Java would need a wrapper class to simulate delegates).
So, having said all that, is there a language who's goal is to be structurally compatible with all other languages by supporting all language features of all languages?
I'm not so concerned with being able to fully translate between languages as I am with being able to express each language's code in the common language. So the goal would be translating to the common language and back again to the source language without losing anything. Like: Java->Common->Java or LISP->Common->LISP