Fork me on GitHub
Calofir Emil09:01:14

Has anyone used Clojure jar in a Java project, in production?

Alex Miller (Clojure team)14:01:49

I have, and I’m sure many others have as well

Calofir Emil15:01:06

I looking for some good use cases. Trying to smuggle Clojure at work. persistent collections are a good starter, but they don't mingle well with the Java 8 streams and generics. Lots of hard casts. The code is bloated and someone else could decide to replace them with Guava, in the future.

Alex Miller (Clojure team)15:01:03

Clojure’s approach is quite intentionally different from Java’s. Using just a little Clojure is likely to be worse than all in on either. The best way to leverage it is to implement a component or subsystem behind a set of Java interfaces.

👍 8

My smuggle plan is to create one of our next microservices in Clojure. Tell them I already have it half built from a side-project.

👍 4
Alex Miller (Clojure team)18:01:34

yes, that's a perfect level of granularity (and kind of one of the selling points of microservices imo)


For what it's worth, we introduced Clojure as a low-level library language inside our legacy ColdFusion apps on the JVM back in 2011 and that's how we iterated into an all-Clojure shop over time.


We rely on Clojure's Java API for that (to get Vars and IFns and invoke methods on them). Over the years we've approached the classpath aspect in several different ways (because that was something CFML didn't have, so we had to write some CFML code to add things to the classpath, and we integrated that initially with Leiningen under the hood at startup, then switched to Boot, then switched to the CLI and deps.edn).


I gave a talk back in 2012(?) at Clojure/West called Doing Boring Things with an Exciting Language that covered how we'd introduced Clojure to our existing non-Clojure systems. I've given a longer follow-up called Clojure and CFML Sitting in a Tree at several meetups too.


hadn't seen that one, thanks for mentioning (and giving) it. presume it is this:


Yup, that's me! 🙂


Is ask.clojure also intended for questions like "how do I read from a socket connection with clj-http", like something you would ask on StackOverflow?


Asking for a friend (cc @U7ERLH6JX)


I think so, looking the recent posts.

Alex Miller (Clojure team)14:01:54

Yes, ok for any Clojure related question


anyone using kakoune for clojure development?


i think eraserhd used to - he may still

Drew Verlee17:01:38

Does anyone know of a resource like the book "operating system concepts" but for browsers?


And people used to say it was over-the-top to call browsers the new operating systems! 😉

Drew Verlee04:01:51

I can't think of it any other way.