Live data from Hacker News

Joker: A small interpreted dialect of Clojure written in Go

joker-lang.org

71–73 of 73 posts

Re: Joker: A small interpreted dialect of Clojure written in Go

#71
post #70
post #69

Earlier quoted context omitted.

> You can in effect write Java in Clojure, but the language seems to be discouraging you. Things start to look ugly and hard to parse Clojure is really a functional language at heart, so when you need to go down to an imperative model for performance I agree that's when things start to feel not quite right, and you begin to fight the language a little, the lack of standard imperative loops become an obvious annoyance…

The cheatsheet is very handy! Thank you. I'd completely forgotten about it. I usually end up poking around Clojuredocs, but it's very unstructured and you're just hunting for a function that fits the bill. And yeah, your analysis of functional programming paradigms in Clojure mirrors how I think of it as well. I see that a lot, how the language is really pushing you to program functionally and almost intentionally ma…

I just noticed you can actually leverage `into-array` at critical parts - if you just need a data collection for quick traversal.

Re: Joker: A small interpreted dialect of Clojure written in Go

#72
post #71
post #70

Earlier quoted context omitted.

The cheatsheet is very handy! Thank you. I'd completely forgotten about it. I usually end up poking around Clojuredocs, but it's very unstructured and you're just hunting for a function that fits the bill. And yeah, your analysis of functional programming paradigms in Clojure mirrors how I think of it as well. I see that a lot, how the language is really pushing you to program functionally and almost intentionally ma…

I just noticed you can actually leverage `into-array` at critical parts - if you just need a data collection for quick traversal.

If you're interested in high-performance Clojure, these articles are good:

https://dragan.rocks/articles/18/Fluokitten-070-map-reduce-p...

Fluokitten and Neanderthal are great for high performance numerics. Can't really get any faster than Neanderthal (which uses MKL and the GPU for compute). And fluokitten can make working with arrays a bit nicer, in that it'll look a bit more like working with sequences, though you still need to be careful about the functions you use with it to avoid boxing.

https://clojure.org/reference/java_interop

Read the section about type hints and working with primitive types and the optimization tips section.

Re: Joker: A small interpreted dialect of Clojure written in Go

#73
post #72
post #71

Earlier quoted context omitted.

I just noticed you can actually leverage `into-array` at critical parts - if you just need a data collection for quick traversal.

If you're interested in high-performance Clojure, these articles are good: https://dragan.rocks/articles/18/Fluokitten-070-map-reduce-p... Fluokitten and Neanderthal are great for high performance numerics. Can't really get any faster than Neanderthal (which uses MKL and the GPU for compute). And fluokitten can make working with arrays a bit nicer, in that it'll look a bit more like working with sequences, though you…

oh woah very cool! sorry for the late response - I wanted to take the time to look at it more closely. Thanks for that info. I'd never really looked into Fluokitten. It looks awesome :D

I've played with Neanderthal but the MKL dependency is a bit annoying (doesn't work on my Pinebook Pro and I can't ship binaries with it) - so I'd overlooked Fluokitten entirely. But this is very complementary to the Clojury way of doing stuff and has no dependencies. I'm def going to try to work this into my standard toolbox :)) I've only done the normal java-interop stuff in the past but this looks like a definite step up

Post reply on HN