Page 1 of 2

Human language level programming languages

Posted: Mon Nov 19, 2018 3:21 am
by Quantum_Robin
Hi,

It is written in book Java How to Program ninth edition that instead of using the strings of numbers that computers could directly understand, programmers began using English-like abbreviations to represent elementary
operations:

1.5 Machine Languages, Assembly Languages and High-Level Languages

Programmers write instructions in various programming languages, some directly understandable by computers and others requiring intermediate translation steps. Hundreds of such languages are in use today. These may be divided into three general types:

Machine languages
Assembly languages
High-level languages
Any computer can directly understand only its own machine language, defined by its hardware design. Machine languages generally consist of strings of numbers (ultimately reduced to 1s and 0s) that instruct computers to perform their most elementary operations one at a time. Machine languages are machine dependent (a particular machine language can be used on only one type of computer). Such languages are cumbersome for humans. For example, here’s a section of an early machine-language program that adds overtime pay to base pay and stores the result in gross pay:

+1300042774
+1400593419
+1200274027

Programming in machine language was simply too slow and tedious for most programmers. Instead of using the strings of numbers that computers could directly understand, programmers began using English-like abbreviations to represent elementary
operations. These abbreviations formed the basis of assembly languages. Translator programs called assemblers were developed to convert early assembly-language programs to machine language at computer speeds. The following section of an assembly-language program also adds overtime pay to base pay and stores the result in gross pay:

load basepay
add overpay
store grosspay

Although such code is clearer to humans, it’s incomprehensible to computers until translated to machine language. Computer usage increased rapidly with the advent of assembly languages, but programmers still had to use many instructions to accomplish even the simplest tasks. To speed the programming process, high-level languages were developed in which single statements could be written to accomplish substantial tasks. Translator programs called compilers convert high-level language programs into machine language. High-level languages allow you to write instructions that look almost like everyday English and contain commonly used mathematical notations. A payroll program written in a high-level language might contain a single statement such as

grossPay = basePay + overTimePay

Instead of using the high-level languages, programmers will start using the more higher-level programming languages or human language level programming languages?

I probably will create the more higher-level programming, in other words, I probably will create the human language level programming.

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 12:50 pm
by Kopa

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 2:00 pm
by Quantum_Robin
@Kopa,

I did not understand your reply.

What you want to say?

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 2:52 pm
by Kopa
Forth is human language level programming.

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 3:12 pm
by Quantum_Robin
Kopa wrote:Forth is human language level programming.
@Kopa,

Why did you talk that Forth is human language level programming?

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 3:20 pm
by Kopa
Why not? :)

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 3:25 pm
by Quantum_Robin
Kopa wrote:Why not? :)
@Kopa,

An intelligent compiler will ask for clarification whenever there’s an ambiguity and may suggest improved wordings to resolve the issue. Writing a program will end up being a conversation with an intelligent machine which anyone could handle even if they know nothing about programming - it will be a collaboration with an intelligent system which is in itself an expert programmer. The error messages will be comments and questions just like the ones you’d get if you were co-writing a program with a human programmer. (“When you say “print the result of that part”, do you mean this part [a section of the code is highlighted], and do you want it printed to the screen or the printer?”)

None of that will stop you putting in a line of C or any other programming language if you want to, but most of the work will simply be done in natural language, typically at a much higher level with the compiler working out how to carry out the tasks asked of it. The end user will also become a programmer, telling the machine how (s)he would prefer things to be done, and the machine will comply. That will rarely be done through anything other than natural language.

Programming languages will end up being increasingly high-level until they become identical to natural language. You will eventually be able to write all your programs in English, Portuguese, or any other natural language, although you will also be able to mix that with instructions of the kind used in today’s programming languages whenever you think that’s more efficient or clearer.

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 3:31 pm
by Kopa
Bot programmer?

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 3:48 pm
by Quantum_Robin
Kopa wrote:Bot programmer?
@Kopa,

I am human.

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 4:18 pm
by tsdima
Forth is a human language level programming.

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 4:22 pm
by Quantum_Robin
Kopa wrote:Forth is human language level programming.
tsdima wrote:Forth is a human language level programming.
@tsdima,

O @Kopa also said that Forth is a human language level programming.

Why Forth is a human language level programming?

Re: Human language level programming languages

Posted: Mon Nov 19, 2018 6:04 pm
by tsdima
@Quantum_Robin

Why did you talk that you is a human?

Re: Human language level programming languages

Posted: Fri Nov 23, 2018 2:06 am
by Quantum_Robin
Kopa wrote:Forth is human language level programming.
Kopa wrote:Why not? :)
@Kopa,

Forth is a fun language to work with if you're trying to do something with linguistics as you can take any words you like from natural language and turn them into instructions, but it still has severe limitations which will prevent it from evolving into natural language programming system.

Re: Human language level programming languages

Posted: Fri Nov 23, 2018 2:28 am
by Kopa

Re: Human language level programming languages

Posted: Fri Nov 23, 2018 3:50 am
by Quantum_Robin
@Kopa,

Where natural language is ambiguous, the machine can simply ask for clarification to make sure it has understood the instruction the right way, and if it hasn’t, it can help the programmer improve the wording of the instruction.

Please, see the Plain English Programming site so that you can see a language that looks close to natural language. That would let you see that using normal language would be a practical way to write code.