Thinking of programming language and Language runtime

Source: Internet
Author: User

1. What is a programming language

A programming language should have basic elements:

1. Type system (variable can be defined)
2. Composite type (for example: struct, Enum, class, interface)
3. Cyclic structure
4. Judging the structure
5. Functions, and their invocation specifications

6. Compiler, can compile this language source code, compiled, specific platform can execute code

This is what makes up a programming language

2. Runtime (Runtime)

The runtime contains the basic environment for the program to run, with dynamic memory---heap, wired stacks, and the most basic runtime function libraries, such as file read/write APIs, string manipulation, and so on.

The CLR is called the Common language runtime (Common Language Runtime)

1. Both ctsc# and vb.net are managed code for the common language runtime, and their syntax and data types vary. How does the CLR host these two different languages? Common type systems (Common type System) are used to solve problems with different data types in different languages, such as int in C #, and integer in vb.net, which we compile into two generic type Int32 by CTS. All of them. NET language to share this type of system, enabling seamless interoperability between them. 2. The difference between CLS programming languages is not only the type, but also the syntax or language specification. So. NET limits the interoperability issues raised by these different points by defining common language Specifications (Common Language specification). CLS is a standard of the lowest language and has developed a kind of. NET platform as the target language must support the minimum characteristics, as well as the language and others. NET language to achieve interoperability between the Any language that complies with this standard is in. NET Framework can be implemented to invoke each other. For example, naming in C # is case-sensitive, and vb.net is case-insensitive, so the CLS stipulates that the compiled intermediate code must have a different exception than the case. 3.. NET compilation technology in order to achieve cross-language development and cross-platform strategic objectives. NET all of the applications written are not compiled into native code, but compiled into Microsoft intermediate code MSIL (Microsoft intermediate Language). It will be converted by the JIT (Just in time) compiler into machine code. C # and VB.net code are compiled by their respective compilers into Msil,msil to conform to the general syntax, the CPU does not need to know about it, and then compiles it into the appropriate platform-specific code by the JIT compiler, which is referred to as our operating system. This kind of compilation realizes the code to be managed, also can improve the running efficiency of the program.

Thinking of programming language and Language runtime

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.