I found a defunct Ruby like language called Reia a couple of days ago https://github.com/tarcieri/reia/ and http://reia-lang.org/
It's object oriented and runs on the top of the Erlang VM. It maps classes on gen servers, which is pretty natural and it spares the developer all the boilerplate of creating a gen server module. Unfortunately the language designer killed it because "it's pretty bad to have two competing niche languages with nearly identical features." The other language was Elixir. However the two languages are very different. Elixir is 100% functional, Reia could have been the language to transition millions of OO developers to a functional and concurrent world. I could have used it instead of Ruby.
I really don't find static typing to be more "work". You still have to think about types in dynamically typed languages, you just get to skip specifying them.
In java you have options other than a HashMap, there is LinkedHashMap (which preserves insertion order) and TreeMap (which stays sorted according to a comparator). There are also extensions for things like Immutability. The checking can also guarantee that it will only have one type of object, or a common interface, or you could allow it to accept any kind of object.
So, yeah, there's quite a few things that an associative array could be, and there's reasons for all that, and i've used most of these on web backends.