Clojure
Pull request Compare This branch is 5 commits ahead, 10 commits behind clojure:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
script
src
.gitignore
CHANGES.md
CONTRIBUTING.md
README.md
license.txt
notes.txt
pom.xml
project.clj

README.md

match

An optimized pattern matching library for Clojure. It supports Clojure 1.5.1 and later as well as ClojureScript.

You can find more detailed information here.

Releases and dependency information

Latest release: 0.3.0-alpha4

Leiningen dependency information:

[org.clojure/core.match "0.3.0-alpha4"]

Maven dependency information:

<dependency>
  <groupId>org.clojure</groupId>
  <artifactId>core.match</artifactId>
  <version>0.3.0-alpha4</version>
</dependency>

Example Usage

From Clojure:

(require '[clojure.core.match :refer [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 [cljs.core.match :refer-macros [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.

Developer information

Copyright and license

Copyright © 2010-2014 David Nolen, Ambrose Bonnaire-Sergeant, Rich Hickey & contributors.

Licensed under the EPL (see the file epl.html).