(* (-> 5 (+ 2)) 4)
28(macroexpand '(-> x (drop 2)))
(drop x 2)
(-> 1 (+) (-) (*) (/))
-1(macroexpand '(-> a b c))
(c (b a))
(-> 1 (- 2) (+ 1))
0(-> "clojure.pprint/cl-format" read-string resolve meta :ns)
nil(macroexpand '(-> 3.0 Math/sin Math/cos))
(Math/cos (Math/sin 3.0))
(-> #(Double/parseDouble %) class supers)
#{clojure.lang.AFn clojure.lang.AFunction clojure.lang.Fn clojure.lang.IFn clojure.lang.IMeta clojure.lang.IObj java.io.Serializable java.lang.Object java.lang.Runnable java.util.Comparator java.util.concurrent.Callable}
(-> 1 (+ 1) (* 2))
4(let [[x y z] (map inc [1 2 3])] [(-> x inc inc) (-> y inc inc) (-> z inc inc)])
[4 5 6]
(-> #'+ meta :name name keyword)
:+(-> #'apply meta :arglists last last)
args(-> 5 (< 10) (if "whoa"))
"whoa"(-> 1 (+ 2) (* 3))
9(-> 1 inc inc inc inc)
5(-> 4 (+ 1) (* 2))
10(-> 10 range (->> (map inc)))
(1 2 3 4 5 6 7 8 9 10)
(-> 'd (list 'a 'b 'c))
(d a b c)
((-> even? complement complement complement) 2)
false(-> nil nil? true? false? false?)
true(-> 1 comp inc inc inc)
4(-> "hello" .toUpperCase (.replace \H \N))
"NELLO"(macroexpand '(-> :a {:a :b}))
({:a :b} :a)
(-> 321 Integer/toString ((partial repeat 2)))
("321" "321")
(-> 'cat name (str "_") symbol)
cat_(macroexpand '(-> 1 (+ 2)))
(+ 1 2)
(macroexpand '(-> (a) (b) (c)))
(c (b (a)))
(-> "snowman ☃" .getBytes (String. "UTF-16"))
"獮潷浡渠�"(-> "foo.bar/read" read-string resolve meta :ns)
nil(macroexpand '(-> 1 str clojure.string/trim))
(clojure.string/trim (str 1))
((-> [_] #(println "hey")) 1)
nil"hey\n"(macroexpand '(-> x f g))
(g (f x))
(-> 20 (- 5) (* 2))
30(-> 5 (+ 3) (* 4))
32(identical? '+ (-> #'+ meta :name))
false(-> 5 (+ 2) (* 4))
28(macroexpand-1 '(-> #(prn :hi) ()))
(nil (fn* [] (prn :hi)))
(-> 2 (#(+ 3 %)))
5(macroexpand-1 '(-> 1 inc inc))
(inc (inc 1))
(macroexpand-1 '(-> x (foo y)))
(foo x y)
(-> 2 (- 5) (- 10))
-13(#(-> {1 2, 3 5}))
{1 2, 3 5}
(-> [i (range 10)] (for i))
(0 1 2 3 4 5 6 7 8 9)
(macroexpand '(-> e -target -value))
(-value (-target e))
(-> {:a 0, "b" 4} (:a))
0(-> [a (range 10)] (for a))
(0 1 2 3 4 5 6 7 8 9)
(-> 1 (#(+ 2 %)))
3(-> "clojure.core" symbol find-ns meta :doc)
nil(-> 1 (->> (str 3 2)))
"321"(macroexpand-1 '(-> 123 str reverse))
(reverse (str 123))

