実践CommonLispを読むその3
第四章 シンタックスとセマンティック
第四章でやっとLISPの文法がでてきた。何故括弧が多いのか・・・本当に多いよね。慣れれば分かりやすくメリットも多いのだろうが、他の言語使用者がLISPを見たら敬遠したくなる理由も分かるよ。
名称 | 内容 |
---|---|
リスト | 括弧で括られた部分。空白で区切りいくつでも要素を含められる |
アトム | リスト以外は全てアトム |
※空リスト「()」はアトムでありリストでもある。また「()」はNILとも書ける。
真偽値に関して、偽はNILだけが唯一の偽の値、それ以外は全て真。分かりやすい。ただ、これはCommon Lispの世界だけであり、他のLISP処理系では異なっている場合もある。例えばSchemeは「#f」を偽として扱っている。
等しいに関しては数値の比較に関しては「=」があり、文字の比較には「CHAR=」がある。それ以外にもオブジェクトを比較する「EQ」「EQL」「EQUAL」「EQUALP」が4つある。使い分けに関しては・・・まあ本をよんで、この本では常に「EQL」を使いましょうって事です。理解が浅い間は「EQL」を使いましょう、それが安全かな。
読んでいて面白かったのはコメントの利用法に推奨する利用法があるって事かな、
;;;; | セミコロン4つはファイルヘッダに使う |
;;; | セミコロン3つは段落のコメントに使う |
;; | セミコロン2つは以降のコードに対して使う |
; | セミコロン1つは行に対して使う |
面白いね。複数行を一気にコメントできるコメントはないのかな?