[This is related to Microsoft's CommonTypeSystem]
To fully interact with other objects regardless of the language they were implemented in, objects must expose to callers only those features that are common to all the languages they must interoperate with. For this reason, a set of language features has been defined, called the Common Language Specification (CLS), which includes basic language features needed by many applications. See "What is the Common Language Specification?" at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconwhatiscommonlanguagespecification.asp .
See also CommonLanguageInfrastructure