If文
Lispでは、ifは関数のような見掛けだが実引数が評価されない特殊形式(マクロ)である。真偽値は、nil という名前や中身の無いカッコ () で表現される空リストが偽として扱われ、他の値は真として扱われる。then節とelse節のどちらも式である。
真の時だけ実行するとき
真と偽の両方に振り分けるとき
Lispにはcondという、同等の機能を実現できる特殊形式もある。仕様や実装によっては、ifがcondに展開されるマクロのこともあるし、condがifに展開されるマクロのこともある。