Is PHP a high-level language? Why is it always hacked by other languages?

Source: Internet
Author: User
Ps. I know that advanced languages are not necessarily "high-end ". But the problem is, since it is a high-level language and since Turing is complete, why is it "low-end ". Where are other languages involved? Ps. I know that advanced languages are not necessarily "high-end ". But the problem is, since it is a high-level language and since Turing is complete, why is it "low-end ". Where are other languages involved? Reply: N card and a card are actually awesome, but do you think N card and a card are not black and black?
IOS and Android are awesome, but do you think the iOS and Android parties are not black?
Similarly, you can tell me which programming language is not hacked?
Programming languages can be divided into two types: 1) hacked 2) useless
-- Ostrovski

Right upstairs
-- Kaspersky
This topic persists

The XXX language is really a programmer.
The XXX editor is the ultimate goal of programmers.
The XXX language will be a trend in the future, and XXX will be killed.

Do you see what they have discussed?

I really want to add these XXX Files. to avoid large-scale war, forget it.
Advanced languages will be hacked and low-level languages will not be moved. haha, first of all, we must insist that PHP is the best language in the world ~

PHP low is simple to start with. it is easy to write and has many built-in functions. most people use it.
There is no design pattern. you can run whatever you want, and the running cost is low (it can be run in a space)

PHP is a high-level language and a language that can compete with java for hacking times.

In addition, PHP writes fast because there is no such name as below .....

Black java before leaving. Refer, you see
Javax. swing. plaf. nimbus. InternalFrameTitlePaneMaximizeButtonWindowNotFocusedState Class Reference

Link: JavaDevelopmentKit (JDK) 1.7.0 _ 03: javax. swing. plaf. nimbus. InternalFrameTitlePaneMaximizeButtonWindowNotFocusedState Class Reference Which language is not hacked? Even if it is better, it cannot be liked by everyone. Wikipedia explains low-level languages in this way:
Low-level programming language is a type of computer programming language in computer science. This type of programming language is called low-level because it cannot be further abstracted during operation, and directly corresponds to the machine language or command of the central processor, therefore, it is generally referred to as the original programming language. Even compared with advanced languages, this does not mean that low-level languages are inferior to high-level languages. On the contrary, low-level languages can be run by the central processor without a large amount of compilation operations, therefore, the compilation and operation efficiency of source code written in this programming language is generally higher than that of the advanced language.

Low-level and high-level programming languages are actually relative concepts. compared with C languages, Java can be considered as relatively advanced programming languages.
A blog post explains the differences between advanced and low-level languages as follows:

Generally, advanced and low-level languages have the following features:

Advanced Language: high implementation efficiency, low execution efficiency, weak hardware controllability, large target code, good maintainability, and good portability

Low-level language: low implementation efficiency, high execution efficiency, strong hardware controllability, small target code, poor maintainability, and poor portability


We all know that the CPU runs binary commands, and all programs written in languages must eventually be translated into binary code. But why are there any of the above differences? The C language and assembly language are the representatives of low-level languages.

The lower the language, the closer the form is to machine commands. assembly languages correspond to machine commands one by one. The more advanced the language, the more commands a statement corresponds to. the reason is that the advanced language abstracts and encapsulates the underlying operations, the process of programming is more in line with human thinking habits and greatly simplifies human labor. That is to say, if you write a sentence in a high-level language, it will be converted into many underlying operations. most of the work is handed over to the machine responsible for the conversion (that is, the compiler), which frees up manpower. Because machines are used to provide convenience for humans, the emergence of advanced languages is the inevitable result of computer development.

The following describes why low-level language execution is more efficient:

1. low-level languages can optimize efficiency by controlling hardware access

The lower the language, the closer the month to the bottom layer, that is, the stronger the hardware access control capability, the higher the utilization efficiency of hardware resources. For example, the assembly language can access registers, but the C language cannot. Through access to registers and other hardware, we can optimize the program running efficiency to the maximum, while advanced languages such as C use the most memory structures such as stacks, the access speed is naturally inferior to the register.

2. high-level language programs have redundancy and efficiency loss.

Various languages need to be translated into machine code through the compiler. no matter how intelligent and powerful the compilation is, redundancy is generated. The redundancy here does not refer to the number of commands, but to whether there are unnecessary tasks. The key to generating redundancy is the coupling between the language and machine commands. The greater the coupling degree, the simpler the compiler translation process, and the less redundancy is generated. There is no redundancy after translation because it corresponds to the machine code. As advanced languages are abstracted and encapsulated, their coupling with machine commands is low. Therefore, the entire translation process is complicated, therefore, a large amount of redundancy is inevitable in the specific process of advanced languages. It is said that the C language has a 10% efficiency loss.

3. high efficiency depends on the programmer level.

A poor programmer may write a program using a program, but there may be a lot of useless operations. The program master can use C language to optimize the program to the maximum. The final result may be that the compiled program cannot run the C language program.


In short, the workload for completing a job remains the same. when more machines are done, fewer people will be done. at the same time, many details of the program will be controlled by people. Various languages are entangled in this balance point. From C/C ++'s optimization of machine computing efficiency to C #/JAVA's optimization of development efficiency. Human operations are more convenient and efficient. The cost is that the machine processes more things and the computing efficiency is further compressed. However, this compression is within the permitted scope, so this is also an improvement.

In my opinion:
  • Low-level languages can directly control computer hardware and achieve some functions (you can directly operate the CPU and memory of the hardware). If the programmer's level is good enough, you can directly write high-performance programs, every time a program is developed, it needs to be re-programmed. the amount of code is large, so encapsulation occurs.
  • Encapsulation has the advantages of high reusability and high quality, but the disadvantage is that the encapsulated things have to sacrifice memory and CPU to adapt to various computer environments and reuse, not concise enough. However, the advantage is greater than the disadvantage. with the development of science and technology, computer hardware is not so valuable.
  • A high-level language is the encapsulation of a low-level language. it is encapsulated into a series of functions for programmers to learn and develop. it is unnecessary to learn something that will not be used in the future. Since low-level languages can directly manipulate hardware, improve program performance, and the underlying languages of most advanced languages, they will not be eliminated.
Programming languages are commonly known as "computer languages", which are divided into machine languages, assembly languages, and advanced languages. C, java, and PHP are all advanced languages.
Advanced is not equal to high-end. For PHP, there is a complete example of PHP: a fractal of bad design/fuzzy notepad There is nothing to add. A group of dummies have nothing to do.

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.