Common Lisp勉強中・・・ (7)
本で言う第8章, 比較と条件分岐.
本は, 「やさしいLisp入門」.
今回はそんなに面白くない.
とりあえず, 構文だけまとめておく.
;; if文 (if 条件式 真なら実行 偽なら実行) ;; case文 ;; 「式」の結果とぞれぞれ「要素のリスト」の値がマッチするもののみが実行される. ;; 値の比較には, eqlが使われる. ;; よって, 「1/10」と「0.1」や文字列同士の比較には使えない. (case 式 (要素のリスト1 値1 ...) (要素のリスト2 値2 ...) (要素のリスト3 値3 ...) ... (otherwise 値N ...)) ;; ecase文 ;; ほぼcaseと同じ. ;; 列挙したリストの中に式の値に対応するものが無いとエラーを発生させる. (ecase 式 (要素のリスト1 値1 ...) (要素のリスト2 値2 ...) (要素のリスト3 値3 ...) ... (要素のリストN 値N ...)) ;; typecase文 ;;式が属するデータの型によって, 場合分けを行う. (typecase 式 (型リスト1 値1 ...) (型のリスト2 値2 ...) (型のリスト3 値3 ...) ... (otherwise 値N ...)) ;; cond文 ;; 先頭から順番に条件式を処理をしていく. ;; その返戻値が真となる最初の条件に対応する実行式のみを実行. (cond (条件1 実行式1 ...) (条件2 実行式2 ...) ... (t 実行式N ...))