Opšta jezička infrastruktura

Opšta jezička infrastruktura (engl. Common Language Infrastructure (CLI)) je otvorena specifikacija razvijena od strane kompanije Majkrosoft koji opisuje izvršni kod i okruženje za njegovo izvršenje koje čini jezgro Microsoft .NET Framework-a i implementacije besplatnog softvera otvorenog koda Mono i Portable .NET. Specifikacija definiše okruženje koje omogućava da više jezika na visokom nivou mogu da se koriste na drugim računarskim platformama bez pisanja programa za određenu softversku arhitekturu.

Pregled

uredi
 

Između ostalog, CLI specifikacija opisuje četiri sledeća aspekta:

Sistem opštih tipova
Skup tipova podataka i operacija koji dele svi SOT programski jezici.
.NET метаподаци
Informacije o programskoj strukturi, tako da se može referencirati između programskih jezika i alata, što olakšava rad sa kodom napisanom na jeziku koje ne koristite.
Zajednička jezička specifikacija
Ovaj skup pravila definišu podskup sistema opštih tipova.
Sistem virtuelnog izvršavanja
Ovaj sistem učitava i izvršava CLI kompatibilne programe, koristi metapodatke da kombinuje posebno generisane delove koda u toku izvršenja.


Svi kompatibilni jezici kompajliraju Opšti intermedijalni jezik (engl. Common Intermediate Language (CIL)), koji je posredni jezik koji je izdvojen iz hardverske platforme. Kada se kod izvršava, specifična platforma sistema virtuelnog izvršavanja će kompajlirati CIL na mašinski jezik u skladu sa specifičnim hardverom.