ここ数日はVim scriptばかり書いている。

unite.vimのsourceを書くのに手探りで書きはじめたけど、なかなかおもしろい。触った感触としてはPerlに近い気がする。関数でゴリゴリやっていくかんじとか、力技でOOPを実現しているところとか。

map関数にVim scriptのコードを文字列として渡すところか気持ち悪すぎておもしろい。

あと、スコープごとに接頭辞が違うのも慣れれば大したことではないけど、油断すると忘れてエラーが出てなかなかおもしろい。(スクリプトローカルだとs:, グローバルスコープだとg:, 関数の引数だとa:, ローカルスコープだとなし、というかんじっぽい)

しかしリスト代入 (let [a, b] = [[1,2]] # a -> 1, b -> 2) ができたり、ループが抽象化されているのはそこそこ高級言語っぽくて、思ったより書きづらくない。

unite.vimのsourceつくるの、簡単なわりに便利度高くてコストパフォーマンスがよいのが嬉しい。