“Type safe dictionary” is just another way of saying “object”
No it's not. Dictionaries are accessed by key whereas objects are accessed by field (which is a high level way of representing an offset in memory). So one of those two is at least 10x faster than the other.
please show a language whose HashMap type does compile-time checking. I am actually interested.