Language-independent specification
A language-independent specification is a programming [language specification] providing a common interface usable for defining Formal semantics of [programming languages|semantics] applicable toward arbitrary language bindings.
LIS's are language-agnostic; they mitigate the risk that a certain language binding might reduce compatibility with other languages. An ideal LIS allows the language bindings to take advantage of features of a programming language uncompromisingly.
Examples of LIS include Interface description language, Simplified Wrapper and Interface Generator and Common Language Infrastructure.
Recursive transcompiling can be used to distribute a language independent specification across many different technologies, with each technology potentially keeping an authoritative description of a different part of the specification. Recursive transcompiling provides the general methodology for distributing this authoritative information through the rest of the derivative code pipeline.