Pleased to announce pdfn 1.0 - a predicate dispatching library for clojure 
and clojuresript

README and source code: https://github.com/selfsame/pdfn

Leiningen dependency information:

    [selfsame/pdfn "1.0"]

Pdfn is a multimethod style macro for compiling functions with core.match 
style conditionals from ordered methods with predicate:argument patterns. 

example usage:

(defpdfn open)

(pdfn open [subject ^:contents object] 
  (str "opening reveals" (:contents object)))

(pdfn open [subject object] 
  {object (and* :contents :locked)}
  (str "it's locked"))

(pdfn open [^:key subject object] 
  {object (and* :contents :locked)}
  (str "unlocking and opening reveals" (:contents object)))

(open {} {:locked true :contents [:boots]})
>"it's locked"

(open {:key true} {:locked true :contents [:boots]})
>"unlocking and opening reveals[:boots]"

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to