quote 、、、お前も関数やったんか。

quote

  • 最近、common lispをずっと触っている。
    都度、そういうことかという事か!と納得が面白くてハマっている状況なのだが、今回はquoteについて。

Lispでは全てのものをリストとして扱う。そしてそれは2種類に分けられカッコに包まれる。

  1. コードのリスト

(print foo)

  1. データのリスト

'(foo bar)

- 違いはデータのリストの冒頭にシングルクォートがくっ付く事。

コードのリストはリスト内の先頭の要素が関数として、残りの要素が引数として解釈される。

今なるほどとなったのは次の分は、実はシンタックスシュガーで

'(foo bar)

元の文に展開すると

(quote (foo bar))

quoteを関数だと理解するとつまり、データのリストもコードと同じ構造。シンタックスだったのか!と。

  • 前置きなしに学び始めのLispについて書き始めたが、その辺も近々書いておきたい。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です