He did indeed say he preferred static typing, but I wonder if his opinion would change if he learned about core.typed. He would probably still prefer Haskell, because he doesn't like things like that to be optional, but nonetheless I mentioned him purely as an endorsement of functional game programming, not of Clojure in particular.
Fair enough; I haven't used Haskell but I know intuitively that a Clojure library won't be able to replicate the sophistication of its type system. On the other hand, the dynamic nature of Clojure is what makes REPL-driven game development possible.
I'm willing to give up some type system sophistication in exchange for that, along with access to the JVM, macros, and so on. Carmack may not agree with that trade-off, but like I said, I mentioned him specifically for his endorsement of functional game programming.
I'm actually trying to prototype a language that gets you the best of both:
* Clojure style dynamic development
* A Lisp (with proper macros, homoiconicity etc.)
* Runs on JVM
* Can use Clojure libraries unmodified
* Static type system (similar to Typed Clojure, but as part of the compiler and driving real optimisations, not just as a separate static analysis tool)
The mention of Carmack is somewhat misplaced in that he decided languages like Lisp and Scheme that didn't offer the leverage of types like Haskell.
So perhaps languages like ML/Haskell, maybe even Rust, are more to the point?