08 December 2017
Alex Miller
Clojure 1.9 is now available!
Clojure 1.9 introduces two major new features: integration with spec and command line tools.
spec (rationale, guide) is a library for describing the structure of data and functions with support for:
Validation
Error reporting
Destructuring
Instrumentation
Test-data generation
Generative test generation
Documentation
Clojure integrates spec via two new libraries (still in alpha):
spec.alpha - spec implementation
core.specs.alpha - specifications for Clojure itself
This modularization facilitates refinement of spec separate from the Clojure release cycle.
The command line tools (getting started, guide, reference) provide:
Quick and easy install
Clojure REPL and runner
Use of Maven and local dependencies
A functional API for classpath management (tools.deps.alpha)
The installer is available for Mac developers in brew, for Linux users in a script, and for more platforms in the future.
For more information, see the complete list of all changes in Clojure 1.9 for more details.
Thanks to all of the community members who contributed to Clojure 1.9 (first time contributors in bold):
Adam Clements
Andy Fingerhut
Brandon Bloom
Cameron Desautels
Chad Taylor
Chris Houser
David Bürgin
Eli Lindsey
Gerrit Jansen Van Vuuren
Ghadi Shayban
Greg Leppert
Jason Whitlark
Johan Mena
Jozef Wagner
Lee Yen-Chin
Matthew Boston
Michael Blume
Michał Marczyk
Nicola Mometto
Ruslan Al-Fakikh
Steffen Dienst
Steve Miner
Yegor Timoshenko
Zhuang XiaoDan