何故Lisperがマクロについて語るのか。Lisperと議論してみても満足のいく答を得た人はそんなにいないと思う。 それはLisper自身便利とは思っていても何が便利なのかを意識してなくて他人に上手く説明出来ないからじゃないかと思った。 ちょっと思いついた範囲でまとめてみる。 最近ではマクロシステムを持つ言語は珍しくない。Rust, Scala, Template Haskell, Mirahなどなど。最初にCommon Lispのマクロと他の言語のマクロとの違いを少し考えてみたい。 Unless まず、unlessをマクロで書くことを考えてみたい。単純にifにnotをつければいい。 Common Lispではこうなる。 (if (not foo-p) bar) (defmacro unless (cond then) `(if (not ,cond) ,then)) (unless fo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く