Programming language · 2000
C#
Multi-paradigm (object-oriented) programming language.
Official site ›What is C# written in?
What C# is used for
C# is the primary language of the Microsoft .NET ecosystem, used for Windows desktop apps, enterprise back-ends (ASP.NET), and games. The Unity engine makes it one of the most popular languages for game development.
Notable software: countless Unity games, Windows business applications, and Microsoft services built on ASP.NET.
About C#
C# is a multi-paradigm (object-oriented) programming language. It is a statically typed and garbage-collected language that compiles to bytecode that runs on a virtual machine. It supports object-oriented, imperative, and functional programming. Compiling to bytecode for a virtual machine is the same model the JVM and .NET use: the VM, not the CPU, interprets or JIT-compiles the bytecode.
C# first appeared in 2000 and was designed by Microsoft, Anders Hejlsberg, and Mads Torgersen at Microsoft. Today C# is one of the most widely used programming languages in the world.
C# in the language family tree
C# drew on ideas from Java, C++, Delphi, and Eiffel and went on to influence TypeScript, Dart, Vala, and Q#.
Sources: Wikipedia · Wikidata · Official site
Quick Facts
- Compiler
- Roslyn is written in C#
- Runtime
- CLR / CoreCLR is written in C++
- Created by
- Anders Hejlsberg, Microsoft, 2000
- Output
- Common Intermediate Language (CIL)
C# implementation layers
| Layer | Written in | What it does |
|---|---|---|
| Roslyn compiler | C# | Compiles C# to CIL bytecode |
| CoreCLR runtime | C++ | JIT-compiles CIL, manages memory |
| Base Class Library | C# | Core .NET APIs |
Frequently Asked Questions
Evidence Sources
- https://en.wikipedia.org/wiki/C_Sharp_(programming_language)
- https://github.com/dotnet/roslyn
- https://github.com/dotnet/runtime
- https://en.wikipedia.org/wiki/TypeScript
- https://en.wikipedia.org/wiki/Dart_(programming_language)
- https://en.wikipedia.org/wiki/Vala_(programming_language)
- https://en.wikipedia.org/wiki/Design_by_contract
- https://en.wikipedia.org/wiki/Q_Sharp
- https://en.wikipedia.org/wiki/PowerShell
- C# on Wikidata (Q2370)