空でないリストであるフォームは、その先頭要素に応じて、関数呼び出し、マクロ呼び出し、または特殊フォームのいずれかとなります。これら3種類のフォームはそれぞれ異なる方法で評価され、詳細は後述します。残りのリスト要素は、関数、マクロ、または特殊フォームの引数となります。
空でないリストを評価する際の最初の手順は、その先頭要素を調べることである。この要素だけで、リストがどのような形式であるか、またリストの残りの部分をどのように処理すべきかが決まる。先頭要素は、Schemeなどの一部のLisp方言で行われるように、評価されることはない。