4 karma · joined December 7, 2017
(I think) It's not because of brains or abundance, it's because of the human language.
> How far should we go to match people’s natural processes versus trying to change the way people think about programming?
Economically, it is your time (of one person only) versus the time of potentially thousands of users. What do you think?
> How impactful are comments in understanding a program? Variable names? Types? Control flow?
Ideally, I think, comments would not be contained in the source code, polluting the general vision of its structure, but would be placed outside, as documentation.
For variable names, as long as its meaning/use is made immediately clear on first sight, without needing to figure out its frequency pattern or see its declaration to figure it out (maybe placing it in a separate place from the code, again), the variable name shouldn't matter much (as long as its not purposefully unrelated or obscure).
I think it would be useful to have something like a "live documentation" in a REPL (commands like man commands documenting each part of the language (and program), each word an entry, non-sequentially accesible). That is something I would do if I were to design a programming language, a structure called a "dictionary" documenting each and every reserved/defined word in the environment.