March 30, 2019
        
    REPL tips
從今年 2 月開始,接了一個公司內部應用軟體的專案開發,我用 clojure + luminus + datomic 來實作。不知不覺也就每天寫 clojure 的 REPL 近兩個月了。每天玩 REPL 之後,很快就發現一些過去我用 REPL 的盲點。
沒有善用 clojure.repl/pprint
  沒有善用的主要原因,自然是因為在 fireplace.vim 的環境下,一開始我沒有特別做一些設定時,直接做 cpp, cqp 之類 REPL 操作,並不會有 pretty print 的輸出。後來,我總算是下定決心,把 leiningen profiles 設定好,加入了一個叫 vinyasa 的 leiningen dependency
  設定好之後,就可以用 (>pprint ...) 來做 pretty print 。
沒有善用 *1 *2
過去,我在做 REPL 操作時,常常做的事情是這樣子:
  (f1 a b c) => 試到結果正確
  (f2 (f1 a b c) d) => 也是試到結果也正確
  (f3 (f2 (f1 a b c) d) e) => 然後指令就愈來愈長, 愈來愈難下
  其實不用這樣子麻煩,第二次可以這樣子下指令 (f2 *1 d) 。