transducer

    2熱度

    1回答

    請告訴我之間的差異: (transduce (comp fn-1 fn-2 fn-3) conj vector-collection) 和 (eduction fn-1 fn-2 fn-3 vector-collection) 我讀過eduction docs但不瞭解排出的目的。

    10熱度

    1回答

    在Clojure Core documentation for the 1.7 release - 以下功能 dedupe disj! dissoc! filter keep map random-sample remove replace take-while 在他們的API說明 Returns a transducer when no collection is prov

    0熱度

    1回答

    將換能器應用於原子值的習慣用法是什麼? 這似乎是做的工作,但我不確定正確性(和樣式^^)。 (let [xf1 (map inc) xf2 (map #(+ % 2)) xf #(vec (eduction (comp xf2 xf1) %)) a (atom [1 2 3])] (swap! a xf)) ;=> [4 5 6]

    8熱度

    1回答

    Rich Hickey's Strange Loop transducers presentation告訴我們在Clojure 1.6中有兩個實現map,一個用於clojure.core中的序列,另一個用於core.async中的通道。 現在我們知道,在1.7,我們有傳感器,爲此,foldr(reduce)功能從高階函數給出的函數,但不是一個集合返回時像map和filter。 我想表達和失敗的是,

    0熱度

    1回答

    看後富希基的talk on transducers,我的理解是,他們可以 大大(通過消除對中間序列表示的需要) 輔助語言/ API設計人員在獲得減速「優化減速器組成的性能只要它們作爲傳感器實現一次,就可以免費'遍及所有的序列/迭代/流/等等。 除了這些優點(這可能與許多不相關),使用換能器進行編碼還有其他好處嗎?

    2熱度

    1回答

    使用Clojure,我將一些數據從SQLite數據庫中提取出來。它將以地圖列表的形式出現。以下是數據外觀的縮寫示例。 ( {:department-id 1 :employee-firstname "Fred" :employee-lastname "Bloggs"} {:department-id 1 :employee-firstname "Joe" :employee-la

    2熱度

    1回答

    我在clojuredocs上遇到過completing函數,但目前沒有文檔。 你能提供一些例子嗎?

    0熱度

    1回答

    我想用我的Raspberry Pi通過壓電傳感器產生簡短的高音(並且最好是響亮)「嘟嘟聲」。我試着將傳感器的+連接到一個GPIO引腳(並將-ve連接到GND),並使引腳短時間高電平。這工作,但它是一個非常安靜的點擊,而不是一個響亮的嘟嘟聲。 有誰知道如何產生嘟嘟聲? 謝謝!

    3熱度

    1回答

    comp的文檔聲明它從最右邊的函數開始,將參數應用到它,然後將結果提供給下一個函數等等。因此這裏的數字首先加入然後str施加到整數16: ((comp str +) 8 8) ;;=> "16" 此代碼是從實施例7中的core.asyncwebinar: mouse (events->chan js/window EventType.MOUSEMOVE (chan 1

    1熱度

    1回答

    當使用數組時,有規律地需要中間表示 - 特別是在與功能的編程連接,其中數據常常被視爲不可變: const square = x => x * x; const odd = x => (x & 1) === 1; let xs = [1,2,3,4,5,6,7,8,9]; // unnecessary intermediate array: xs.map(square).filter(od