An optimized pattern match and predicate dispatch library for Clojure. Currently the library only implements pattern matching. It supports Clojure 1.3.0 and later as well as ClojureScript.
You can find more detailed information here.
Latest beta: 0.2.1
Leiningen dependency information:
[org.clojure/core.match "0.2.1"]
Maven dependency information:
<dependency>
<groupId>org.clojure</groupId>
<artifactId>core.match</artifactId>
<version>0.2.1</version>
</dependency>
From Clojure:
(use '[clojure.core.match :only (match)])
(doseq [n (range 1 101)]
(println
(match [(mod n 3) (mod n 5)]
[0 0] "FizzBuzz"
[0 _] "Fizz"
[_ 0] "Buzz"
:else n)))
From ClojureScript:
(ns foo.bar
(:require-macros [cljs.core.match.macros :refer [match]])
(:require [cljs.core.match]))
(doseq [n (range 1 101)]
(println
(match [(mod n 3) (mod n 5)]
[0 0] "FizzBuzz"
[0 _] "Fizz"
[_ 0] "Buzz"
:else n)))
For more detailed descriptions of usage please refer to the wiki.
Copyright © 2010-2013 David Nolen, Rich Hickey & contributors.
Licensed under the EPL (see the file epl.html).