# C++/CLI

> programming language

**Wikidata**: [Q1022268](https://www.wikidata.org/wiki/Q1022268)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/C++/CLI)  
**Source**: https://4ort.xyz/entity/c-cli

## Summary
C++/CLI is a programming language standardized by Ecma International that functions as a language extension for C++ compilers. It is distinct for its role in the Common Language Infrastructure and serves as a replacement for the Managed Extensions for C++.

## Key Facts
- **Instance Of:** Programming language.
- **Standardization:** Standards body is Ecma International (Standard ECMA-372).
- **Publication Date:** 2004 (First widely distributed beta implementation released by Microsoft in July 2004).
- **Predecessor:** Replaces "Managed Extensions for C++."
- **Paradigm:** Structured programming.
- **Aliases:** C plus plus/CLI, C++/Common Language Infrastructure, C-Plusplus/CLI.
- **Related Entity:** C++/CX (a related language extension for C++ compilers).
- **Documentation:** Official documentation is available via Microsoft Docs and the Ecma International website.

## FAQs
### Q: What is C++/CLI?
A: C++/CLI is a programming language and extension for C++ compilers. It is standardized by Ecma International and was designed to replace the Managed Extensions for C++.

### Q: When was C++/CLI released?
A: The standard was published in 2004, with the first widely distributed beta implementation released by Microsoft in July of that year.

### Q: Who maintains the standard for C++/CLI?
A: The standards body responsible for C++/CLI is Ecma International.

## Why It Matters
C++/CLI holds significance in the software development landscape as a structured programming language that bridges specific C++ compiler capabilities. It represents a specific evolution in language extensions, having formally replaced the older "Managed Extensions for C++." Its standardization by Ecma International (as ECMA-372) distinguishes it as an open standard rather than merely a proprietary implementation, ensuring a documented specification for interoperability and compiler implementation.

The existence of C++/CLI demonstrates the ongoing effort to adapt C++ for specific runtime environments, a lineage also seen in its relationship to C++/CX. With documentation available in multiple languages (including English and Japanese) and a presence across numerous Wikipedia language editions, it remains a recognized technical standard for developers working within this specific programming paradigm.

## Notable For
- **Standardization:** Distinct from unmanaged C++, it is an Ecma International standard (ECMA-372).
- **Evolution:** It is the designated successor to "Managed Extensions for C++."
- **Paradigm:** It is categorized specifically under the structured programming paradigm.
- **Global Reach:** Technical documentation and descriptions are maintained in multiple languages, including English and Japanese.
- **Microsoft Ecosystem:** While an Ecma standard, its implementation history is closely tied to Microsoft, as evidenced by the 2004 beta release and Microsoft Docs resources.

## Body
### Identity and Classification
C++/CLI is classified as a programming language. It is also referred to by the aliases "C plus plus/CLI," "C-Plusplus/CLI," and "C++/Common Language Infrastructure." It falls under the programming paradigm of structured programming. In the hierarchy of technical standards, it is related to C++/CX, which is described as a language extension for C++ compilers.

### History and Development
The language was published in **2004**. Historical records indicate that the first widely distributed beta implementation was released by Microsoft in July 2004. It functionally replaced the earlier technology known as "Managed Extensions for C++."

### Standardization and Governance
The governing body for C++/CLI is **Ecma International**. The standard is officially described at the Ecma International website (`http://www.ecma-international.org/publications/standards/Ecma-372.htm`). It is assigned various library and authority IDs, including the Library of Congress Authority ID `sh2006008767` and the Freebase ID `/m/068yg4`.

### Resources and Documentation
Primary documentation for C++/CLI is hosted by Microsoft at `https://docs.microsoft.com/en-us/cpp/dotnet/dotnet-programming-with-cpp-cli-visual-cpp`. Additional descriptions of the standard are available in Japanese at `http://vene.wankuma.com/ecma372/StartingState.aspx`. The language maintains an active community presence, evidenced by a dedicated Stack Exchange tag and Wikipedia entries in 10 languages (including Arabic, German, English, and Japanese).

## References

1. [Source](https://github.com/JohnMarkOckerbloom/ftl/blob/master/data/wikimap)
2. [Source](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-372.pdf)
3. Freebase Data Dumps. 2013
4. National Library of Israel Names and Subjects Authority File