Huh? Clojure is one of the fastest dynamic languages. It's not intended to replace C++ or Rust.
> - Hosted on the JVM, so you're going to be dealing with Java eventually
In the real world this is a blessing since there are a lot of useful Java libraries out there.
> - No automatic tail call optimization because of the limitations of the JVM, so it feels like you're writing a mess of macros rather than real functional code
How did you come to this conclusion? Lack of automatic TCO doesn't mean you have to write macros, and most people in the Clojure community will tell you to prefer functions over macros unless it's absolutely necessary.
Huh? Clojure is one of the fastest dynamic languages. It's not intended to replace C++ or Rust.
> - Hosted on the JVM, so you're going to be dealing with Java eventually
In the real world this is a blessing since there are a lot of useful Java libraries out there.
> - No automatic tail call optimization because of the limitations of the JVM, so it feels like you're writing a mess of macros rather than real functional code
How did you come to this conclusion? Lack of automatic TCO doesn't mean you have to write macros, and most people in the Clojure community will tell you to prefer functions over macros unless it's absolutely necessary.