This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-12-02
Channels
- # adventofcode (76)
- # announcements (1)
- # asami (1)
- # babashka (31)
- # beginners (302)
- # calva (3)
- # cider (1)
- # clj-kondo (1)
- # cljdoc (1)
- # cljfx (63)
- # cljsjs (2)
- # clojure (36)
- # clojure-europe (29)
- # clojure-gamedev (2)
- # clojure-nl (5)
- # clojure-sanfrancisco (2)
- # clojure-spec (2)
- # clojure-uk (71)
- # clojurescript (19)
- # conjure (21)
- # core-async (10)
- # core-matrix (1)
- # cryogen (4)
- # cursive (12)
- # datomic (22)
- # emacs (4)
- # events (1)
- # figwheel-main (7)
- # fulcro (9)
- # graalvm (1)
- # jobs (1)
- # kaocha (17)
- # lambdaisland (1)
- # meander (7)
- # mount (2)
- # nrepl (12)
- # off-topic (35)
- # re-frame (15)
- # reagent (17)
- # remote-jobs (1)
- # reveal (41)
- # shadow-cljs (13)
- # spacemacs (2)
- # tools-deps (24)
(let [sf (rewriter
'{?k1 ?v1, ?k2 ?v2}
;; or on the right!
'(meander.epsilon/or {?v1 ?k1} {?v2 ?k2}))
;; Makes a system like `meander.epsilon/rewrite`
s_find (sf find-runtime)
;; Makes a system like `meander.epsilon/rewrites`
s_search (sf depth-first-search-runtime)
target {:a 1 :b 2 :c 3}]
[(s_find target)
(s_search target)])
;; => [{1 :a}
;; ({1 :a}
;; {2 :b}
;; {1 :a}
;; {3 :c}
;; {2 :b}
;; {1 :a}
;; {2 :b}
;; {3 :c}
;; {3 :c}
;; {1 :a}
;; {3 :c}
;; {2 :b})]
After this is merged, I think beyond bug fixes, I really need to stop working on the epsilon
arm of the project and continue this work on zeta
.