% Function ENDP
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の目的とも一致しています。