5 ms·
Any specific issues you've encountered?
by raspasov 6y ago
Any specific issues you've encountered?
- abraxas 6y agoA lot of issues centred around persistent immutable data structures that Clojure uses for just about everything. Yes those data structures are faster than any previous attempts at language level immutability constructs but are still much slower than their mutable counterparts. Yes, you can use in Clojure Java Collections through the interop interface but that mostly defeats the point of Clojure. In the end I retreated back to Java but even that is wrought with a number of performance issues due to its lack of contiguous arrays of complex types. I’m toying with Go as it’s a simple language that has far fewer performance surprises than most other popular high level languages. If that turns out disappointing I’m going back to where I started 24 years ago which was C++.
- onetom 6y agoOr you can also use the transient/volatile versions of data structures and functions, but I wouldn't know where to learn about these in depth. I've seen them being mentioned briefly in some official docs on clojure.org and seen them in implementations of basic functions, like `reduce` and whatnot, but I'm still not very confident using them... Also, I had no need for more performance than what I get with the immutable data structures.