That's a fair assessment, from my perspective. Keep in mind, though, that while we believe that
most of of what
most programs do can be most easily written in a natural language syntax, we are just as certain that
some things programmers want to say can be more easily expressed in formulas, or graphics, etc. Which is why we propose "Hybrid Programming" as the next step in our research:
https://www.indiegogo.com/projects/the-hybrid-programming-language/x/8950932
Here, for example, is a Plain English fahrenheit to celsius converter as a kid might code it:
To convert a fahrenheit temp to a celsius temp:
Put the fahrenheit temp into the celsius temp.
Subtract 32 from the celsius temp.
Multiply the celsius temp by 5.
Divide the celsius temp by 9.
And here it is as an experienced Plain English programmer might code it. Note the use of nicknames (eg, "celsius" for "celsius temp"), and that mathematical precedence is strictly left-to right in Plain English):
To convert a fahrenheit temp to a celsius temp:
Put the fahrenheit minus 32 times 5 divided by 9 into the celsius.
Since ratios are a standard numerical type in Plain English, the programmer could also have said:
To convert a fahrenheit temp to a celsius temp:
Put the fahrenheit minus 32 times 5/9 into the celsius.
Where 5/9 is a ratio, not a division instruction. All of those versions actually compile and run.
Now here is the obvious Hybrid version, with the routine header (which also serves as a comment) in Plain English, and the calculation in standard "computer dialect" mathematical notation:
To convert a fahrenheit temp to a celsius temp: c=(f-32)*5/9
Note that the Hybrid compiler assumes letter names for the variables based on their full Plain English names. If other names were desired or a naming conflict arose, the programmer could either use the Plain English names, like this:
To convert a fahrenheit temp to a celsius temp: celsius=(fahrenheit-32)*5/9
Or the programmer could explicitly assign short names to the variables:
To convert a fahrenheit temp to a celsius temp:
Let x = the fahrenheit temp.
Let y = the celsius temp.
y=(x-32)*5/9
This last approach would only be worthwhile, of course, when the formula was complex enough to justify the required variable definitions above it.
Our thought is that the programmer should be able to write the solution as it most naturally occurs to him or her, without really thinking about syntax. We believe Plain English is a big step in that direction, and that Hybrid Programming is the next logical step after that. Note that it's relatively trivial to add "special syntax snippets" to a Plain English compiler; it's a much bigger deal to extend, say, a C++ compiler to support a Plain English framework.