

Clojure - Clojure 1.11.0 release
source link: https://clojure.org/news/2022/03/22/clojure-1-11-0
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Clojure 1.11.0 release
22 March 2022
Alex Miller
Clojure 1.11 provides new syntax for keyword argument invocation, namespace aliasing without loading, a new clojure.math namespace, and many additional bug fixes and enhancements.
Keyword arguments are optional trailing variadic arguments of the form (f akey aval bkey bval …). Invoking functions with keyword arguments is convenient for people to write, but keyword args are not collections so they are hard to flow between functions. In Clojure 1.11, functions taking keyword arguments can now be passed a trailing map instead of or in addition to and following the key/value pairs. When a lone map is passed, it is used for destructuring, else the trailing map is added to the key/value pair map by conj. This change makes keyword arg functions more convenient for programmatic use.
Spec (and other libs) rely on qualified keywords as spec names. Namespace aliasing in ns
makes long names shorter but required namespaces to exist and be loaded. In Clojure 1.11, require
adds a new option :as-alias
, which is like :as
but does not require the namespace to exist or load.
The JDK package java.lang.Math provides access to many useful math functions. Clojure previously relied on using these via interop, but this had issues with discoverability, primitive performance, higher order application, and portability. The new clojure.math namespace provides wrapper functions for the methods available in java.lang.Math for long
and double
overloads with fast primitive invocation.
Detailed changelog
See the change log for a complete list of all changes in Clojure 1.11.0.
Contributors
Thanks to all the community members who contributed patches to Clojure 1.11:
-
Alexander Yakushev
-
Ambrose Bonnaire-Sergeant
-
Arne Brasseur
-
Ghadi Shayban
-
Howard Lewis Ship
-
Hugo Duncan
-
Jonathan Johnston
-
Keyhan Vakil
-
Marc O’Morain
-
Michiel Borkent
-
Nikita Prokopov
-
Paula Gearon
-
Steve Miner
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK