ClojureのS式になんでも書けるという話
2017-05-27 / [clojure]
S式という記法(?)はほんとになんでも書けると知った。
翌日追記: S式というかReaderがすごいっぽい。
例えば
(def japanese '(式のなかに 日本語を書くと そのままシンボルになる))
とか
(defn 二倍 [x](\* x 2))
とか書ける。
それにmutil line stringも
(def multiline "複数行の文字列もそのまま改行を含んだStringに構築される")
こんなふうに書ける(Pythonぽい)。
何が嬉しいって、 日本語で書いた文章がS式として構造化できるところ。 すごくない?
昨日はそれの事実を確認してとても興奮しました。
Haskellでもquasi-quote使えばできるのだろうけれど、ClojureのASTと比べると複雑に見える。GHCのバージョンアップでASTの仕様が変わる可能性よりも、ClojureのASTの仕様が変わる可能性はずっと低そうだし。