&gt; This problem is worth thinking about (which is why a customer asked a team of CS researchers and linguists to think about it, including one barely competent programmer who nonetheless had reasonably good intuitions for what character distributions looked like), but it turns out to be much, much less hard than many people originally expected.<p>There are a couple related ideas that might make this more obvious in hindsight:<p>- You can determine the language of a substitution-ciphered text just from its frequency distribution.<p>- Imagine getting a page each of text in several different languages, say english, french, portuguese, polish, and turkish. &quot;Normalize&quot; everything to ascii characters, so laïcité turns into laicite. It will be trivially easy, by looking at any page in isolation, to determine which language is represented there.