I'm won over. I'm now officially a big fan of Clojure.

(ReadWith MyClojureQuoraAnswers)

A LispLanguage dialect that compiles to JavaByteCode.

I originally thought it would be a faff. Lisp's verbose-when-compared-to-HaskellLanguage meets the JavaVirtualMachine. But now I got into it I'm starting to love it.

Compare ClojureLikeLanguages

Selling Points

  • Great language design. Very clean and intuitive. Exemplary use of interfaces in the standard collections libraries.
  • Immutable and lazy collections as default and prefered way of doing things.
  • Great library via full Java compatibility / integration. (Clojure compiles to JVM bytecode and can both call and be called from Java)
  • Emacs with ParEdit is a good dev environment.
  • Great concurrency libraries.

How do you make a really great language?

Start with an already great one, and have the courage to make tasteful breaking changes.

In this case ... start with Lisp.

And then add :

  • extra syntax. For data. This goes against Lisp's traditional disdain for syntax. But while extra syntax for code doesn't buy much, a bit of extra syntax for data turns out to be a great trade-off.
  • immutability. Common Lisp and Scheme both tried to sell themselves as "multi-paradigm". Clojure reclaims its place as a FunctionalProgramming language. With the associated benefits.

My software in Clojure :

  • CardiganBay the wiki-engine that runs this (ThoughtStorms) wiki. You are probably reading a static HTML site that was exported from Cardigan Bay. All of ThoughtStorms is now written in CardiganBay.
  • Patterning makes geometric patterns with FP
  • MindTrafficControl command-line edition is now Clojure.

Getting Stuff Done

Funding for Clojure FreeSoftware projects : https://www.clojuriststogether.org/

See also :

  • I checked out RacketLanguage too, and I think it's great. I just prefer certain things about Clojure. ClojureVsRacket

Bookmarked at 2021-12-17T10:38:59.424396 https://github.com/jarcane/minicosm

Bookmarked at 2022-03-28T23:07:21.000188 https://github.com/lambdaisland/facai