People have argued that Elixir could replace Python, but tbh, Elixir’s syntax is too ugly to replace something as elegant and simple as Python.

Imo that's not Pythons great strength, although I like the syntax. Python is great because of the C interop. FFI in Java is horrible, and I assume it's not great in Erlang/Elixir either. In Python? It's pretty damn great. Which is why Pythons library ecosystem is so enormous.

Elixir C interop is actually pretty pleasant. After Java I was expecting it to be a nightmare, but it was shockingly easy and well though out.

The big thing in Elixir community right now is to write the native/performance code in Rust[1] and interop with Elixir.

[1]: https://github.com/rusterlium/rustler