應用感測器

(def xf (filter keyword?))

應用於集合,返回序列:

(sequence xf [:a 1 2 :b :c]) ;; => (:a :b :c)

應用於集合,使用其他功能減少生成的集合:

(transduce xf str [:a 1 2 :b :c]) ;; => ":a:b:c"

應用於集合,並將結果傳送到另一個集合:

(into [] xf [:a 1 2 :b :c]) ;; => [:a :b :c]

建立一個使用感測器過濾訊息的核心非同步通道:

(require '[clojure.core.async :refer [chan >!! <!! poll!]])
(doseq [e [:a 1 2 :b :c]] (>!! ch e))
(<!! ch) ;; => :a
(<!! ch) ;; => :b
(<!! ch) ;; => :c
(poll! ch) ;;=> nil