A compendium reference on why typing (the computer science kind) is hard.

Some of the languages listed as "undecidable" does not necessarily mean that the compiler crashes or whatever; many of them have some sort of a sanity check where the compilation will stop if the types appear to be undecidable. There are many valid and useful programs with entirely decidable types, which for the most part are also within the safe bit of those languages.

(Via Lobste.rs)