I see the phrase \"programming idiom\" thrown around as if it is commonly understood. Yet, in search results and stackoverflow I see everything...
From micro:
<
An "idiom" in (non-programming) language is a saying or expression which is unique to a particular language. Generally something which doesn't follow the "rules" of the langauge, and just exist because native speakers "just know" what it means. (for instance, in English we say "in line" but "out of line" -- that would be idiomatic)
Moving this to the programming arena, we get things like:
if(c=GetValue())
{...}
which actaually means:
c = GetValue();
if (c != 0)
{....}
which every C/C++ programmer understand, but would totally baffle someone coming from a different programming language.