In regards to Scala, I would say OCaml has similar capabilities.
OO in OCaml feels as if the designers thought "we think OO sucks, so let's implement terrible support for OO to get our point across".
Yes, it has a bit of everything anyone thought about in FP in it.
However you can make use of traits like feature by mixing in modules and objects, while taking advantage of first class modules in OCaml.
> JavaScript has many influences beyond Self
Sure, but I am unaware of any that make it such a great language.
JavaScript has been very successful, and got a whole generation of programmers playing around with prototypes without knowing it.
JavaScript's success has less to do with how good the language is, rather sharing the same fate as successful systems programming languages, by being the only gate to the kingdom.