Content deleted Content added
OK done Tags: Reverted references removed Visual edit Mobile edit Mobile web edit |
m Disambiguating links to Object-orientation (link changed to Object-oriented programming) using DisamAssist. |
||
(6 intermediate revisions by 6 users not shown) | |||
Line 1:
{{short description|Intermediate representation defined within the CLI specification}}
{{confused|C Intermediate Language}}
{{refimprove|date=November 2017}}
'''Common Intermediate Language''' ('''CIL'''), formerly called '''Microsoft Intermediate Language''' ('''MSIL''') or '''Intermediate Language''' ('''IL'''),<ref>{{cite web |url = https://learn.microsoft.com/en-us/dotnet/standard/managed-code |title = What is "managed code"?|publisher=Microsoft| date=19 April 2023 }}</ref> is the [[intermediate language]] binary instruction set defined within the [[Common Language Infrastructure]] (CLI) specification.<ref>{{cite web |url = https://ecma-international.org/publications-and-standards/standards/ecma-335/ <!-- |page = 32 --> |title = ECMA-335 Common Language Infrastructure (CLI)}}</ref> CIL instructions are executed by a CIL-compatible runtime environment such as the [[Common Language Runtime]]. Languages which target the CLI compile to CIL. CIL is [[Object-oriented programming|object-oriented]], [[Stack machine|stack-based]] [[bytecode]]. Runtimes typically [[Just-in-time compilation|just-in-time]] compile CIL instructions into [[native code]].
CIL was originally known as Microsoft Intermediate Language (MSIL) during the beta releases of the .NET languages. Due to standardization of [[C Sharp (programming language)|C#]] and the CLI, the bytecode is now officially known as CIL.<ref>{{cite
| url = http://www.interviewcity.com/2010/04/what-is-intermediate-languageilmsilcil.html
| title = What is Intermediate Language(IL)/MSIL/CIL in .NET
| access-date = 2011-02-17
| quote = CIL: ... When we compile [a]. NET project, it [is] not directly converted to binary code but to the intermediate language. When a project is run, every language of .NET programming is converted into binary code into CIL. Only some part of CIL that is required at run time is converted into binary code. DLL and EXE of .NET are also in CIL form.}}</ref> [[Windows Defender]] virus definitions continue to refer to binaries compiled with it as MSIL.<ref name="Defender">{{cite web |title=HackTool:MSIL/SkypeCracker |url=https://www.microsoft.com/en-us/wdsi/threats/malware-encyclopedia-description?Name=HackTool:MSIL/SkypeCracker&threatId=-2147221892 |publisher=Microsoft |access-date=26 November 2019}}</ref>
==General information==
Line 289 ⟶ 294:
==See also==
*[[LLVM]]
*[[MLIR (software)]]
*[[List of CIL instructions]]
*[[List of CLI languages]]
|