4clojure #72 Rearranging Code: ->>
4clojure #72 Rearranging Code: ->>
->>
マクロは複数のフォームを経由して式x
をつなげる。
はじめに、x
は第一フォームに最後として挿入され、
それがすでにリストでなければリストを生成する。
それから、第一フォームは第二フォームへ最後のアイテムとして挿入され、
必要ならばそのフォームのリストを作る。
このプロセスが全フォームにわたって繰り返される。
->>
をつかうことは時に、コードを読みやすくします。
(= (__ (map inc (take 3 (drop 2 [2 5 4 1 3 6])))) (->> [2 5 4 1 3 6] (drop 2) (take 3) (map inc) (__)) 11)
答え
reduce +