If-then-else had to be invented
I remember there was a paper that tried to compare natural language usage of common programming language keywords to see if they may come up with other constructs to create a programming language that is easier to learn as your first one.<p>There were a few interesting observations. The one that stuck with me the most is that &#x27;and&#x27; is most commonly used with almost the opposite sense in natural language vs programming: more precisely, in natural language, &#x27;and&#x27; usually implies set union, which is more similar to boolean Or. For example, &#x27;women and children&#x27; means of course &#x27;if X is a woman OR X is a child&#x27;.<p>The other interesting observation was that in natural language we usually describe operations on sets as taking the whole set as an argument, not in terms of what happens with each individual member. For example, it&#x27;s more likely you&#x27;ll say something like &#x27;give candy to these kids&#x27; or &#x27;wash these cars&#x27; than &#x27;give a piece of candy to each kid&#x27; or &#x27;wash each of these cars&#x27;. Of course, index based loops are essentially never used in common language, but even the common loop comprehensions that introduce a loop variable are quite far from natural language.