That Matlab is not great at general programming has absolutely nothing to do with the syntax and everything to do with semantics. In Matlab pretty much everything is a matrix. That is not the case in Julia. Julia work with scalar values just as well as Python. Actually it does it much better.
Object-oriented programming has been on the way out from all major new languages for years now. Go, Rust, Kotlin, Clojure, Julia and many others have downplayed object-oriented programming significantly.
Popularity isn't a suitable metric for 'good'. Look at McDonald's food.
'Python will not be overtaken soon by such an exotic language.'
Python and Julia aren't competitors. Python is suitable for scripts and gluing high performance code together. Julia is a general purpose language which is suitable for writing high performance code. Object orientation was likely a mistake. The industry is slowly moving away from it. There is no abstraction you can express with object orientation that you can't express with multiple dispatch. Structs are very much like the data part of objects.
The object oriented model is a subset of the more general multiple dispatch model offered by Julia. So these two notions contradict each other.
In a few years we will look back at all those class hierarchies and wonder: man, what the hell were we thinking.