![]() | Der er ingen kildehenvisninger i denne artikel, hvilket er et problem. (oktober 2011) (Lær hvordan og hvornår man kan fjerne denne skabelonbesked) |
Common Language Infrastructure (CLI) er en åben specifikation udviklet af Microsoft og standardiseret af ISO og ECMA, som beskriver udformningen af den udførbare kode og det runtime-miljø der udgør kernen i Microsoft .NET Framework og opensource implementeringerne Mono og Portable.NET. Specifikationen definerer et miljø der tillader brugen af forskellige højniveau-sprog på forskellige computerplatforme, uden at skulle omskrives til den specifikke system-arkitektur.
CLI-specifikationen beskriver blandt andet følgende fire aspekter:
Alle kompatible sprog kompileres til Common Intermediate Language (CIL), der er et mellemkodesprog der abstaharer fra platformens hardware. Når koden afvikles, vil den platformsspecifikke VES kompilere CIL-koden til maskinkode i henhold til det specifikke hardware og operativsystem.
I august 2000, arbejdede Microsoft, Hewlett-Packard, Intel og andre på at standardisere CLI. I december 2001, blev det ratificeret af ECMA og efterfølgende ISO-standardiseret i april 2003.
Microsoft og deres partnere har patentet på CLI. ECMA og ISO kræver at alle patenter med afgørende betydning for implementeringen skal gøre tilgængelige under RAND (Licensering), men fortolkningen heraf har ført til en del kontroverser, især i forbindelse med Mono.
I juli 2009 tilføjede Microsoft C# og CLI under deres såkaldte Community Promise, så enhver trygt kan implementere disse standarder uden at skulle frygte et sagsanlæg for patentbrud.
![]() | Spire Denne artikel om standarder og måleenheder er en spire som bør udbygges. Du er velkommen til at hjælpe Wikipedia ved at udvide den. |