And I agree with those words. I guess where you end up with them depends on your interpretation of āexisting cultureā and āterm of artā. To me, the prestigious Oxford English Dictionary is existing culture, but the ASCII byte table is a reduction of that existing culture for the sake of a primitive machine. A term of art is something artfully and thoughtfully designed to represent something in the best possible way. āx and x2 are the real terms of art here. When they are unfeasible to the machine, something inline with the surrounding language gets chosen. sqrt fits into C right alongside strcat and strcmp , but it looks out of place among append(contentsOf:) and lexicographicallyPrecedes(_:).
I speak several languages so I tried it.
The Wikipedia article for Potenz (German for exponent) lists alternate notations to try when searching for the function in an arbitrary programming language. It actually suggests ā first. ^, ^^, ** are then followed by ā
, another nonāASCII operator, and then the list ends with expt. pow does not even appear in the list proper, only in a note afterward.
Under ĪĻ
Ģναμη (Greek for exponent), pow is in the list, but only after ā, ^, ^^, **, ā
and Power.
Under ×××§× (Hebrew for exponent), only ^ and ** are mentioned.
Exponentiation in French offers no alternative to the traditional superscript notation.
Given the native word and fishing for the English equivalent to use as the search term instead, Wiktionary helps the German, French and Greek find the full word āpowerā. (Hebrews get no assistance from it at all.) The word itself, being absent from the function name, is also absent from any HTML heading or navigation elements on any C documentation site, so they fall way down the search results list after suggestions for other programing languages using variants of Power() (not to mention a lot of extremely irrelevant hits...)
Going in reverseāseeing pow already used and wondering what it meansāand using the Google search string for "pow deutsch", "pow français", "pow ελληνικαĢ", "pow ×¢×ר××Ŗ" produces pages about prisoners of war, powāwows and Super Marioās P.O.W. block.
Which do you think you would figure out faster by searching? x.eĢleveĢ(aĢPuissance: y) or pui(x, y)? Four of the first five hits already give the right answer when the first option is transformed into a search string. The second is so short it could be an acronym for almost anything and the search provides a wide array of completely unrelated thingsāno two hits have to do with the same thing (though the correct answer is admittedly does not exist yet to be found among them in the first place).
I think x.raised(toPower: y), x.raised(toPowerOf: y) or x.toPower(of: y) seems like a much more selfādocumenting and discoverable name. (But you are right that raised(to:) is probably vague.) There is vastly more information about the general math concept out there in various languages than there is about the specific programming contexts, and none of the general materials help you figure out pow.