Type SIMPLE-ARRAY
この型の配列は、他の配列へのdisplacedではなく、 fill-pointerを持っておらず、adjustableでもないものが、 型simple-arrayのサブタイプです。 simple-arrayの考え方は、 実装が特別な表現を使用できるようにするためと、 ユーザーが特定の値を常にsimple-arrayにすることを 宣言できるようにするために存在します。
simple-vector, simple-string, simple-bit-vectorの型は、 互いに素であり、型simple-arrayのサブタイプです。 これらは、それぞれ(simple-array t (*))、 (simple-array c (*))のcは型characterのサブタイプの何か、 (simple-array bit (*))を意味します。
特定化
simple-array [{element-type | *} [dimension-spec]]
dimension-spec::= rank | * | ({dimension | *}*)
dimension - 有効な配列の大きさ
element-type - 型指定子
rank - 非負のfixnum
この合成された型指定子は、 正確に型arrayの合成された型指定子に 対応するものとして扱われますが、 これはsimple-arrayのみ含まれるという より制約がある集合であることが違っています。
displacedの配列か、fill-pointerを持つvectorか、 実際にadjustableな配列が、simple-arrayかどうかは 実装依存です。
(simple-array *)は要素の型によらず全てのsimple-arrayを参照し、 (simple-array type-specifier)は make-arrayの:element-type引数として指定されたtype-specifierの 結果のsimple-arrayのみを参照します。