Clojure startup times suck. Let’s just be honest. How do Clojure programmers live with that? Maybe that’s the wrong way to think about it.
Clojure core.async is a way to manage mutable state. Isn’t that against functional programming?
The JVM’s garbage collector allows for Clojure’s persistent data structures to be practical. It’s one of the benefits of being a hosted language: you can take advantage of the millions of dollars invested into the JVM’s development.
When you’re working at a company, you usually inherit their deployment system. And that’s great because then you just do what they do. But what if you are on your own? What are the options for deploying a Clojure server?
The JVM JIT is a highly optimized compiler. I present some resources for learning what it does.
Lambda abstractions are always leaky, but some are leakier than others. Clojure programmers recommend keeping most of your functions pure and containing the leaks as much as possible.