Common Language Runtime (CLR)
One of the most important component of .NET framework is CLR, also known as runtime. It provides functionalities like
- Memory Management
- Exception handling
- Code Access Security (CAS)
- Thread Execution
The runtime manages the execution of code. It also enables you to develop application in the language of your choice, such as C#, Visual Basic and Visual C++. You can also refer the class library and other components that are written in different languages supported by .NET framework.
Common Type System (CTS)
The CTS specifies certain guidelines for declaring, using, and managing types at runtime. The functions performed by the CTS are as follows:
- Cross-language communication, type safety, and high performance execution of code.
- Object-oriented model for implementation of different programming languages.
- Guidelines for different languages to follow, ensuring proper interaction between objects implemented in different programming languages.
The CTS can be classified as Value and Reference types.
Common Language Specification (CLS)
The CLS consists of a set of basic language features that are required by many applications to communicate with other objects, irrespective of the language in which they are implemented. The CLS rules define a subset of the common type system. These objects must expose only those features that are common to all the languages they need to interact with. The components which adhere to these features are said to be CLS compliant components. In simple words it facilitates cross-language interoperability.