- The person who implemented the first version (?) is called Coquand.
- The french have a tradition of naming their software projects after animals.
- Coq is french for Rooster.
But to be honest, there is a rather persistent tale that Thierry Coquand's advisor, Gérard Huet, did it on purpose to offend his American colleagues who were too "politically correct" for his tastes.
He also named a certain programming language "Caml". This does have a perfect innocuous explanation, but also happens to be the name of a certain cigarette brand. This was in 1985, when smoking started to be banned in many public places...
How about the name "Dick" ? As in e.g. Dick Cheney ? Why isn't it considered a slur, just like "cock" ? It an elephant in the room no one speaks about.
How about the word "pussy" as in a small cat ? It has been used to report by the news on "Pussy Riot", which has a direction connection to the female genitalia.
I think it might be because of the sensationalist nature of the US media as such and their juvenile handling of anything that's taboo.
From the FAQ:
2 Did you really need to name it like that?
Some French computer scientists have a tradition of naming their software as animal species: Caml, Elan, Foc or Phox are examples of this tacit convention. In French, “coq” means rooster, and it sounds like the initials of the Calculus of Constructions CoC on which it is based.
Should've just picked a different animal haha. The name is easy to spell, though.
I actually have gotten very few odd looks even from non-programmers when pronouncing "Coq" as "cock" _in the proper context_. "Use Coq" would probably yield a different out-of-context interpretation than "For problem X I think we should consider Coq. It allows ..."
I don't think this is much of a problem in practice.
The funny thing is that people try to pin this issue on Anglo-Saxon puritanism, when the issue is clearly political correctness. But those are the contradictions in liberal thinking for you.
Side note – "Coq" is chosen because it is based on the calculus of constructions, whose abbreviation is "CoC", and whose creator's last name is "Coquand".
I'm sure there are plenty of English names that sound naughty in other languages, but somehow the people who speak those languages manage to carry on.