This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-03-17
Channels
- # announcements (6)
- # babashka (2)
- # babashka-sci-dev (1)
- # beginners (74)
- # calva (3)
- # cider (33)
- # clj-kondo (19)
- # cljsrn (10)
- # clojure (75)
- # clojure-dev (11)
- # clojure-europe (39)
- # clojure-italy (1)
- # clojure-nl (1)
- # clojure-spec (4)
- # clojure-uk (6)
- # clojurescript (139)
- # code-reviews (8)
- # core-typed (7)
- # data-science (1)
- # docs (2)
- # emacs (11)
- # events (1)
- # introduce-yourself (8)
- # lsp (4)
- # malli (10)
- # off-topic (15)
- # pedestal (5)
- # podcasts (4)
- # polylith (18)
- # re-frame (6)
- # react (1)
- # reagent (18)
- # reitit (6)
- # releases (2)
- # rewrite-clj (1)
- # spacemacs (15)
- # sql (2)
- # vscode (5)
Hello Everyone! I’m an engineer working at Epic Games. I got interested in clojure when learning about using functional languages in combination with Transactional Memory. I was a bit turned off though by Java and the JVM (icky), so I instead started just implementing clojure from spec in C/C++. Currently here https://github.com/Zelex/jo_lisp. Its at present faster than the JVM version in some cases (which is pretty cool). Anyways, I have long term plans to push parallelism really far in this fork of clojure.

Welcome! What a cool project 🙂 If it’s anywhere near implementing all of clojure.core, I’d strongly suggest posting about it in the #announcements channel — I think lots of people will be interested. You might also find the https://github.com/babashka/babashka from @U04V15CAJ of interest. I don’t know how much you’ve looked into projects in the community, but interestingly, very few of them actually use Clojure’s STM — most people have found that Clojure’s atoms are already sufficient for their needs. Of course, the projects that do need STM really need it…
Agreed! Very much my favorite out of 10 or so that I've used seriously. I've been specializing in it for around six years, and have no plans to switch until/unless something even better comes along 😄
@U036UA9LZSQ Sounds like a fun project! :) As eggsyntax mentioned, babashka is a Clojure interpreter compiled to native using graalvm native-image. Actually the interpreter library is called SCI: https://github.com/babashka/sci It's also possible to compile SCI as a shared library and call that from c/c++/Rust, etc: https://github.com/babashka/sci/blob/master/doc/libsci.md
Another interesting project to look at may be https://github.com/IGJoshua/coffi which used project Panama to interop with native libraries.