Yep, ferro it's iron, any Romance speaker will know that (in Spanish it's 'hierro'), and the adjective of something related or made from iron it's 'férrico'.
Ah, I guess that makes sense. “rust” comes from the PIE word for red via German, and “ruby” comes from the same PIE word for red via Latin. So it makes sense that the Latin word for “rust” would be similar to the Latin word for “red” :)
Based on the argument, would it be easier to do programming in Japanese I wonder. At least it is a living language with Rpn, sort of as the paper said.
The author, Damien Conway, has told the story several times about a Romanian company that uses/used Lingua::Romana:Perligata for precisely that reason. Of all the Romance languages Romanian is the closest to Latin, so they actually find/found the resulting code to be more readable than normal Perl with all of its English keywords, standard functions, and so on.
That's off, because every Romance speaker will see the English tokens in programming languages as if they were abstract Math symbols without their complex
semantic meaning, just a very simple one.
Right, which is why it is harder to learn most programming languages than it needs to be. A function like “grep” is hard enough for English speakers to figure out. If you speak Romanian, you might be a lot happier with “vannementa”.
(1,$)g/re/command-list
Global command. The global command makes two passes over the file. On the first pass, all the addressed lines matching a regular expression re are marked. Then, going sequentially from the beginning of the file to the end of the file, the given command-list is executed for each marked line, with the current address set to the address of that line. Any line modified by the command-list is unmarked. The final value of the current address is the value assigned by the last command in the last command-list executed. If there were no matching lines, the current address is unchanged. The execution of command-list stops on the first error.
The command to print is:
(.,.)p
Prints the addressed lines. The current address is set to the address of the last line printed.
And thus, `g/re/p` was the command to print all the lines in a file that matched a regular expression.
grep predates the executable of the same name.
perl, as a "useful than shell for sufficiently large programs" brought with it a large amount of the "how you do things in shell, awk, and sed" - which included grep. To a programmer in 1988, porting their shell script from sh (bash wasn't released for another year) to perl - keeping the same executable names as functions made a lot of sense.
All that said, the keywords and jargon associated with particular programming languages are... well, jargon. It isn't meant to something easily understood but rather for two people who both know the same jargon a way of exchanging information more rapidly within a specific domain.
That 'grep' isn't as understandable today is because the older jargon is less used and the domain has fractured into a multitude of other languages (the jargon of JavaScript programmers is sometimes inscrutable to me as a Java developer).
[0] https://web.archive.org/web/20010111052400/http://www.csse.m...
[1] https://metacpan.org/release/DCONWAY/Lingua-Romana-Perligata...