Function ENDP
endp list => generalized-boolean
list - リスト、ドットリストと循環リストも受け付けます。
generalized-boolean - generalized-boolean
listが空のリストならtrueを返却します。 listがコンスならfalseを返却します。
(endp nil) => true
(endp '(1 2)) => false
(endp (cddr '(1 2))) => trueなし。
なし。
listがリストでなかったときは、 型type-errorのエラーが発生します。
なし。
endpの目的は、 通常のリストの終わりを確認することです。 endpはコンス内に降りて行かないので、 ドットリストを与えてもうまく動作します。 しかしもし短いリストに対して反復的にcdrを呼び続けられ、 それらのリストがendpによってテストされ続けたとき、 このような状況において、 最終的にnilではないアトム(実際にリストではない)が endpの引数になったときの結果は未定義です。 これはendpが使われる普通の方法であり、 endpを使用する際に引数の型が通常のリストであるか、 あるいはアトムであるかを強制せず、 単純な関数としてendpを扱うということは、 保守的なプログラミングスタイルであり endpの目的とも一致しています。