Blogs / Company blogs

Clojure

clojure.org

Clojure is a dynamic, general-purpose programming language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language, yet remains completely dynamic – every feature supported by Clojure is…

Popular posts
18
Total points
4,642
HN comments
1,568
Rank
#237 company

Visit clojure.org → RSS feedOn Hacker News Apr 2010 – Jul 2026

Software Engineering 17Programming Languages 10Tools & Productivity 4Tech Industry & Business 3Systems & Performance 1

1

(next Rich)

It is with a mixture of heartache and optimism that I announce today my (long planned) retirement from commercial software development, and my employment at Nubank. It’s been thrilling to see Clojure and Datomic successfully applied at scale.

2

Clojure.spec – Rationale and Overview

Clojure is a dynamic language. Among other things this means that type annotations are not required for code to run. While Clojure has some support for type hints, they are not an enforcement mechanism, nor comprehensive, and are limited to communicating information to the compiler to aid in efficient code generation…

5

State of Clojure 2020

Ten years ago, Chas Emerick ran the first State of Clojure survey. In 2010, most users had been using Clojure for just weeks or months, and few were using it as a language for serious work. This year , we see consistent and growing use for work , steady interest in the key value propositions of Clojure, and an…

10

Clojure’s Approach to Identity and State (2008)

Many people come to Clojure from an imperative language and find themselves out of their element when faced with Clojure’s approach to doing things, while others are coming from a more functional background and assume that once they leave Clojure’s functional subset, they will be faced with the same story re: state as…

13

Clojure: Transducers

Transducers are composable algorithmic transformations. They are independent from the context of their input and output sources and specify only the essence of the transformation in terms of an individual element. Because transducers are decoupled from input or output sources, they can be used in many different…

14

Programming at the REPL (2018)

Clojure REPLs are used for a broad spectrum of purposes, from learning the language to data exploration to live music performance. This chapter will provide some guiding principles for applying Clojure REPLs to the more common use case of pragmatic software development.

15

Programming at the REPL: Data Visualization

Each time we evaluate an expression, the REPL shows us a textual representation of the result: that’s the Print part of Read-Eval-Print-Loop . Most of the time, this textual representation is clear enough for the programmer, but sometimes it becomes difficult to read - especially when dealing with big or deeply nested…

16

Clojure Rationale (2008)

Customers and stakeholders have substantial investments in, and are comfortable with the performance, security and stability of, industry-standard platforms like the JVM. While Java developers may envy the succinctness, flexibility and productivity of dynamic languages, they have concerns about running on…