4 ms·
I find it the opposite. Lisp is much easier to write than, say Go. I think the problem is if you're used to the complexity of writing a Spring Boot app (Java) t
by nickbauman 7y ago
I find it the opposite. Lisp is much easier to write than, say Go. I think the problem is if you're used to the complexity of writing a Spring Boot app (Java) this simplicity of writing in Clojure will confuse you: you think it can't be that simple when in fact it is.
I used to freak out when I'd find the library in Clojure I wanted to use but it had no documentation. Eventually I just started looking at the implementation and I'd see it's like the entire library is 35 lines of code! Or like 102 lines of code! You don't need documentation for something that small.
I've never seen this before in other languages. If you think it's too complicated, you might just be overthinking it.
- eweise 7y agoWhy are you comparing a framework to a language? Can I not write a Spring Boot app in Clojure?
- regularfry 7y agoIn this case, I think it's meaningful. If you take https://github.com/scotthaleen/clojure-spring-cloud https://github.com/scotthaleen/clojure-spring-cloud as a reasonable example of what that would look like, it's (subjectively) ugly as sin. Because you're operating outside idiomatic clojure, there's a lot of incidental complexity and "why would you do it that way?" moments that you wouldn't get with any of the clojure-native, idiomatic web libraries. Yes, you could wrap a lot of it behind more idiomatic facades, but that's still added work you just don't want to have to do.
- eweise 7y agoTo be a fair comparison you either need to compare java to clojure or spring boot to whatever the comparable libraries would be in clojure.
- nickbauman 7y agoClojure doesn't really have frameworks, though. Every once in a while a framework-like-thing emerges but it quickly decomposes into a few libraries. The level of composition tends to be functions not objects, so there aren't any "taxonomy traps" associated with monolithic things in the OO world.
- willberman 7y agoCould you share the 35 line library? I’m curious. I recently asked the Common Lisp subreddit why so many of their libraries lack extensive documentation and most agreed it is a wart on the language.
- nickbauman 7y agoThe one that this first happened with is now much bigger and well documented, oh well. (FWIW: it's shoreleave https://github.com/shoreleave/shoreleave-remote https://github.com/shoreleave/shoreleave-remote, it allows for exposing a server-side namespace as a client-side API in the browser).
- aganame 7y agoThe need for documentation for a library is not linked to the amount of code it has. In fact, it’s rather sad that the programmer didn’t bother to document such a small thing. It most certainly wouldn’t have been a big task.