Erlang
erlang.ewebsite.comErlang: nice set of libraries for a language with no type safety. Also, no mutable state ftw.
Erlang is dynamic strong typed. It IS type safe. It's just not statically typed.
You can get static types for the safety through dialyzer, which does success type inference on source code or existing code (as long as it was compiled with debug info).
The tool will let you annotate types if you want it to make it more strict, otherwise it will just infer them. It will also analyze code to try and find things like patterns that will never match, case clauses that are shadowed by a previous one, etc.
There is also TypEr, which will work with DIalyzer to annotate existing functions for you.
I am surprised there is no button to follow the author on Twitter.