Four of those languages are ones where you can almost always statically tell when code is dead. Two or three of them are dynamic languages with large investments by multiple companies and communities to make the dynamicness less terrible for performance and code size.
The one that is neither is objc (ignoring recent awesome improvements like objc_direct).