Mandatory xkcd reference:

Let's say you design a language, or a next version of an existing language, and say "let's forget the old C-style names, I have a better idea". You rename mkdir to make_directory
. Someone else, following the same way of thinking, invents create_directory
, a third one create_dir
, the next one new_directory
, and so on. Now the programmers have a much harder time learning a new language or a new dialect, because instead of instantly recognizing what a command does and what parameters it expects, they have to read through the manual. By not having the same names and structure, it can be much more likely to have a different use or different order of parameters (if I remember correctly, .NET liked to do this in the beginning, some methods had the parameters like source, destination
, others like destination, source
). It makes programming either more error-prone, or much slower as the programmer has to read the manual every time he uses a function, because one can never be sure what parameters this function in this language in this version is using.
If ALL language designers could agree to change the C-style names for all future languages in exactly the same way, it might make some sense to do it. Good luck in achieving that!
Common roots and cultural heritage are not there without a reason.
make_directory
does not carry any more information to the reader than whatmkdir
alerady does. Instead, it carries excess weight(as in, information/meaning per character is lower) and is easily confused with other similar words, because it is composed of two common words unlikemkdir
which itself has very little chance of being confused with similar words, as such words don't exist. And of course some of us(myself included) simply prefer "unique" names for common entities in the context we operate, it is jargon and makes it easy to communicate with people who are familiar with it. – zxcdw Jul 25 '13 at 05:01