Hello, good day.
I’ve been contemplating forever about what I’m about to write:
So, like natural language, some are fluent and some aren’t. And one can tell if one is not fluent in a language by the concatenation of the different parts of speech, and in the usage of idiomatic expressions-if there be any.
Is this so obvious in programming?
I may know the programming structure needed to write a program that sums two numbers, starting from basic mathematics, and translating it to either JS, or C. If I have spent more time in JS, and know for certain the code for it, and produce the program, in C, it may become an issue, as there are loops that must be crossed in understanding that you would have to import an header file that brings in the “buttons to the calculator” so to speak.
I mean, I hear programmers say idiomatic style is modern or “better”, even though the code runs as it was intended.
I, in curiousity, ask, what makes it better, is it based on the unseen part of the compilation/interpretation of the code by the internals of the host, does idiomatic code somehow make programs run faster, is it just for aesthetic sake. I have asked about this from thinks for 3 nano seconds I believe Lohr, or atk/atp (will confirm). It was clear-somehow. However the question persists and I know I do not yet understand the idea of fluency in programming.
For example, in English, we may use “cannot” or “can’t” as we deem fit, albeit, the word-given-speech by a speaker may connote several meanings.
Is there a limitation in this in fluency, as it has to do with programming languages, such that we must be absolute explicit according to these idiomatic, design style, best practice, production ready styles already acknowledged by the large populace of “fluent” programmers so to speak.
I am not simply asking “who is a fluent programmer”. I know for sure, a fluent programmer cannot be one who remembers syntax for producing solution to a specific problem , as a natural language speaker’s fluency is, in communication (without non-verbal cues)
I hope you understand my thoughts as I intend.
Kindly, if you don’t mind, relate this to JS and C.