Clojure programming language discussion

564 readers
2 users here now

Clojure is a Lisp that targets JVM and JS runtimes

Finding information about Clojure

API Reference

Clojure Guides

Practice Problems

Interactive Problems

Clojure Videos

The Clojure Community

Clojure Books

Tools & Libraries

Clojure Editors

Web Platforms

founded 5 years ago
MODERATORS
51
 
 

Fixed Order Sorting in Clojure

https://camdez.com/blog/2025/04/23/fixed-order-sorting-in-clojure/

Here’s another tidy bit of Clojure that makes me happy… Of course it’s easy to sort items in the natural order: (sort [1 3 4 2]) ; => (1 2 3 4) Or via a mapping to elements that sort in a natural order: (sort-by count ["xx" "xxx" "x"]) ; => ("x"...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

52
 
 

An Appearance on Apropos

https://blog.fogus.me/2025/04/23/apropos-me/

I was fortunate to appear on the April 22, 2025 episode of the Apropos podcast...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

53
 
 

Look at how little I need

https://emil0r.com/posts/2025-04-23-look-at-how-little-i-need/

I recently found the time to rewrite an old library of mine from the ground up: ez-form. This is one of the first libraries I wrote for Clojure, based on code I found myself writing yet again, in yet another project. Forms for the web is one...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

54
 
 

No, really, you can’t branch Datomic from the past (and what you can do instead)

http://blog.danieljanus.pl/2025/04/22/datomic-forking-the-past/

I have a love-hate relationship with Datomic. Datomic is a Clojure-based database based on a record of immutable facts; this post assumes a passing familiarity with it – if you haven’t yet, I highly recommend checking it out, it’s enlightening even...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

55
 
 

How G+D Netcetera used Rama to 100x the performance of a product used by millions of people

https://blog.redplanetlabs.com/2025/04/22/how-gd-netcetera-used-rama-to-100x-the-performance-of-a-product-used-by-millions-of-people/

“Rama enabled us to improve the performance of two critical metrics for Forward Publishing by over 100x, and it reduced our AWS hosting costs by 55%. It sounds like a cliché, but learning Rama mostly involved us unlearning a lot of the conventional...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

56
 
 

Small modular parts

https://ericnormand.substack.com/p/small-modular-parts

Our last episode was with David Nolen. We talk about his development process, his origin, and his philosophy. The next episode is on Tuesday, April 22 with special guest Fogus. Please watch us live so you can ask questions.I have finally released...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

57
 
 

The Duality of Transducers

https://camdez.com/blog/2025/04/21/the-duality-of-transducers/

I finally got around to re-recording and posting this talk on Clojure’s transducers that I gave last year to the Austin Clojure Meetup: The talk walks through what transducers are, their benefits, where they make sense to use (and where they...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

58
 
 

Local S3 storage with MinIO for your Clojure dev environment

https://www.emcken.dk/programming/2025/04/21/local-s3-storage-with-minio-for-clojure-dev-env/

Simple Storage Service or S3 Cloud Object Storage is a versatile and cheap storage. I’ve used it for invoices, contracts, media, and configuration snapshots, among other things. It’s a perfect fit when the object key (or what many might think of as...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

59
 
 

Clojure Submaps

https://camdez.com/blog/2025/04/21/clojure-submaps/

The gentleman behind Clojure Diary was kind enough to recently post a video based on a small comment I made on his YouTube channel: Clojure Diary - Elegant way of filtering maps based on key value pairs. (Please check out his channel as he’s doing...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

60
 
 

Setup Emacs to autoformat your Clojure code with Apheleia and zprint

https://jakemccrary.com/blog/setup-emacs-to-autoformat-your-clojure-code-with-apheleia-and-zprint/index.html

Keeping code consistently formatted is important for readability and maintainability. Once you get used to having a computer format your code for you, manually formatting code can feel tedious.For the last few years, my team has been using zprint...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

61
 
 

Q2 2025 Funding Announcement

https://www.clojuriststogether.org/news/q2-2025-funding-announcement/

Clojurists Together is excited to announce that we will be funding 6 projects in Q2 2025 for a total of $33K USD (3 for $9K and 3 shorter or more experimental projects for $2K). Thanks to all our members for making this happen! Congratulations to...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

62
 
 

Clojure Power Tools Part 3

http://www.karimarttila.fi/clojure/2025/04/20/clojure-power-tools-part-3.html

Clojure REPL. Table of Contents Introduction VSCode, Calva and REPL Editor Integration Babashka Fullstack Libraries Metosin Libraries: Reitit, Malli and Jsonista Aero and Integrant Replicant and Hiccup ...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

63
 
 

Optimizing syntax-quote

https://blog.ambrosebs.com/2025/04/20/optimizing-syntax-quote.html

Syntax-quote in Clojure is an expressive reader macro for constructing syntax. The library backtick demonstrates how to write syntax-quote as a macro. Both approaches are ripe for optimization—take these programs that both evaluate to []: '`[] ;=>...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

64
65
 
 

Added video links to Clojure Book

https://clojure-diary.gitlab.io/2025/04/18/added-video-links-to-clojure-book.html

Some might like to read text and learn, some might want to watch videos and learn. Clojure Book has got a video playlist which you can access here https://www.youtube.com/playlist?list=PLKJ%5C_YtZXuW%5C_Azc3o9rm86n5D1bSavwpvE. Apart from that Clojure...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

66
 
 

Clojure Deref (Apr 17, 2025)

https://clojure.org/news/2025/04/17/deref

Welcome to the Clojure Deref! This is a weekly link/news roundup for the Clojure ecosystem (feed: RSS). Thanks to Anton Fonarev for link aggregation. Podcasts, videos, and media Episode 10 …​ the refactoring continues until the code...

#clojure #clj #cljs !clojure@lemmy.ml @clojure@lemmy.ml

67
 
 

Skyscrapers or mud huts

https://ericnormand.substack.com/p/skyscrapers-or-mud-huts

Our last episode was with David Nolen. We talk about his development process, his origin, and his philosophy. The next episode is on Tuesday, April 22 with special guest Fogus. Please watch us live so you can ask questions.Have you seen Grokking...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

68
 
 

Next-level backends with Rama: fault-tolerant timed notifications in 25 LOC

https://blog.redplanetlabs.com/2025/04/16/next-level-backends-with-rama-fault-tolerant-timed-notifications-in-25-loc/

This is part of a series of posts exploring programming with Rama, ranging from interactive consumer apps, high-scale analytics, background processing, recommendation engines, and much more. This tutorial is self-contained, but for broader...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

69
 
 

Clojure Deref (Apr 11, 2025)

https://clojure.org/news/2025/04/11/deref

Welcome to the Clojure Deref! This is a weekly link/news roundup for the Clojure ecosystem (feed: RSS). Thanks to Anton Fonarev for link aggregation. Podcasts, videos, and media David Nolen guests on Apropos Clojure 2025-04-08 - apropos...

#clojure #clj #cljs !clojure@lemmy.ml @clojure@lemmy.ml

70
 
 

Practices to scale Machine Learning operations

https://building.nubank.com/practices-to-scale-machine-learning-operations/

At Nubank, innovation in machine learning (ML) and data science (DS) drives our mission to build the Purple Future. Recently, we hosted the 92nd edition of our DS & ML Meetup, themed “Practices to Scale Machine Learning Operations.” This event...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

71
 
 

Learning Fennel from Scratch to Develop Neovim Plugins

https://lambdaisland.com/blog/2025-04-16-fennel

by Laurence ChenAs a Neovim user writing Clojure, I often watch my colleagues modifying Elisp to create plugins—for example, setting a shortcut key to convert Hiccup-formatted data in the editor into HTML. My feeling is quite complex. On one hand,...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

72
 
 

numbers, radix, arbitrary precision in Clojure

https://clojure-diary.gitlab.io/2025/04/15/numbers-radix-arbitrary-precision-in-clojure.html

Code ;; numbers.clj 17 017 ;; O17 ;; error 0.17 00.17 8r17 0X17 0x17 16r17 16R17 ;; 16r-17 ;; error -16r17 ;; 0x-17 ;; error -0x17 ;; 0x17.34 ;; error ;; 16r17.34 ;; 7r17 ;; error ;; 4r17 ;;...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

73
 
 

Mudança de Mentalidade: Do Paradigma Orientado a Objetos para o Funcional

https://dev.to/asouza/mudanca-de-mentalidade-do-paradigma-orientado-a-objetos-para-o-funcional-4l28

Disclaimer Este texto foi inicialmente concebido pela IA Generativa em função da transcrição de uma aula do curso "Os 3 pilares para escalar sistemas distribuídos" da Jornada Dev + Eficiente. Se preferir acompanhar por vídeo, é só dar o...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

74
 
 

Building and publishing a Clojure library from scratch with Slim

https://bogoyavlensky.com/blog/build-and-publish-clojure-lib-with-slim/

Learn how to build and publish a Clojure library to Clojars using Slim, a build tool that simplifies the development and deployment process.

#clojure #clj #cljs !clojure@lemmy.ml @clojure

75
 
 

A Clojure Jekyll adventure: Jakel materializes from the mist (a Jekyll clone)

https://www.emcken.dk/programming/2025/04/12/jakel-a-jekyll-clone/

I’m flipping through my quest log to reflect on the trials I’ve faced recently. Most improvements to the Clojure-based Jekyll clone focused on making the blog navigable. This is the fourth part of the series: “A Clojure Jekyll Adventure”. If...

#clojure #clj #cljs !clojure@lemmy.ml @clojure

view more: ‹ prev next ›