elispの条件分岐
[履歴] [最終更新] (2016/01/09 14:18:09)

概要

以下はすべてEshell上での実行結果例です。

いわゆるif-else

C言語などのif-else文に相当する記述を行うためにはcondを使用します。

$ (cond ((/= 1 1)
       "msg"
       "1")
      ((= 1 1)
       "msg2")
      (t
       "msg3"))
msg2

その他の条件分岐

condだけでも事足りますが、他にも状況によっては便利な条件分岐方法が存在します。

if

$ (if (= 1 2)
    "true"  ;真フォームは1つのみ
  "false1" ;偽フォームは複数可能。偽フォームは省略可能。
  "false2")
false2

when

$ (when (= 1 1) ;真の場合に複数フォームを実行
  "msg1"
  "msg2")
msg2

unless

$ (unless (/= 1 1) ;偽の場合に複数フォームを実行
  "msg1"
  "msg2")
msg2
関連ページ