• ☆ Yσɠƚԋσʂ ☆@lemmy.mlOPM
      link
      fedilink
      English
      arrow-up
      2
      ·
      9 days ago

      It’s mostly about having access to Lua ecosystem, also I’m personally a fan of Clojure style syntax. I find having literal syntax for maps, sets, and vectors in addition to lists, as well as stuff like destructuring, helps with readability.

      • davel [he/him]@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        9 days ago

        I’m personally a fan of Clojure style syntax.

        Me too, at least in theory. I’ve followed Clojure pretty closely for someone who’s yet to actually use it except as a toy.

        • ☆ Yσɠƚԋσʂ ☆@lemmy.mlOPM
          link
          fedilink
          English
          arrow-up
          2
          ·
          9 days ago

          I’ve been lucky to work with it more or less exclusively for over a decade now. At this point I don’t even want to touch anything else. :)

          • davel [he/him]@lemmy.ml
            link
            fedilink
            English
            arrow-up
            1
            ·
            9 days ago

            I’d like to work with Clojure, but I have a (perhaps irrational) dislike of the JVM, so I tend to keep an eye on Clojure dialects/descendants.

            • ☆ Yσɠƚԋσʂ ☆@lemmy.mlOPM
              link
              fedilink
              English
              arrow-up
              2
              ·
              9 days ago

              The JVM can be a bit of a resource hog, but it works well for stuff like web services which is what I mostly work on. That said, I highly recommend checking out babashka https://github.com/babashka/babashka

              It’s a graal compiled Clojure runtime that has a small memory footprint and instant startup. I’ve been using it a lot for scripting, and making small web apps like dashboards and it’s been pretty nice, here’s an example https://lemmy.ml/post/15390028

              • davel [he/him]@lemmy.ml
                link
                fedilink
                English
                arrow-up
                1
                ·
                9 days ago

                There’s also some kind of experiment going on where a JVM runtime is preloaded with Clojure, and that JVM & runtime is somehow frozen, packaged and deployed as an executable, thus eliminating the very high Clojure startup cost. I don’t remember where I saw this, unfortunately.

                • ☆ Yσɠƚԋσʂ ☆@lemmy.mlOPM
                  link
                  fedilink
                  English
                  arrow-up
                  2
                  ·
                  9 days ago

                  Yeah, there’s been some work for speeding up clj running on the regular JVM, but I find it never really gets much interest. I think most people use clj for stuff like web services that are long running, and locally develop via the REPL so restarts aren’t common.

                  One project worth watching is Jank, it aims to be mostly compatible but running on LLVM, still not quite production ready, but seems to have some community funding and being developed pretty actively https://jank-lang.org/