A weekly newsletter and podcast diving into Clojure programs and libraries by Daniel Compton.

80: Datafy, paren parties, and adopting a neanderthal (function)

Wednesday, 24 October 2018

Notes.

Hoo boy.

There was quite a commotion this weekend after Stu Halloway’s appearance on the Apropos podcast. A few years ago there was a similar commotion and I wrote this on HN with my perspective. I think it is still accurate today.

The thing to realise about Clojure is that it isn’t an open source language like Python. It is a language controlled very tightly by Rich Hickey and Cognitect. Major work is done in secret (transducers, reducers, spec), then announced to the world as a “Here it is!” and then suggestions are taken. This goes well mostly, though it took a lot of outside persuasion that Feature Expressions weren’t the best idea, and to come up with Reader Conditionals instead.

The underlying problem Clojure/Core has is their communication. If they would come out and explain their philosophy then people wouldn’t get frustrated and confused when they expect the language development to work like other open source projects. Clojure’s development is functioning exactly as planned. It’s not a mistake.

A better way to treat Clojure is closer to a project at Apple (except for Swift). You can submit bugs, and make suggestions for future improvements, and if you really want to provide a patch. But go into it realising that it’s not a community project, and you’re much less likely to get frustrated.

With all that said, the proof of the pudding is in the eating, and for the most partClojure has developed pretty well from Rich’s tight control. I’d love it if there was a Snow Leopard year for Clojure where the focus was fixing longstanding bugs and feature requests, and more focus on those in general, but the language is developing well.

While I can’t claim to speak for the community, in my experience with the Clojure folk I talk with, the concerns Zach Tellman, Tim Baldridge, Bruce Hauman, and others raised in the resulting Twitter threads are shared by more than a tiny minority of the Clojure community. On the whole, I think Clojure is developing well, but there are opportunities within the Clojure language, and for supporting tools, documentation, and libraries to continue to improve the Clojure experience.

-main

Libraries & Books.

People are worried about Types. ?

Foundations.

Tools.

Recent Developments.

Learning.

Misc.